Changeset 99 for trunk/src/unit_tests


Ignore:
Timestamp:
07/30/09 14:25:23 (16 years ago)
Author:
lgiessmann
Message:

added rdf:li handling for to rdf-importer

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/src/unit_tests/rdf_importer_test.lisp

    r98 r99  
    3636           :test-get-literals-of-content
    3737           :test-get-super-classes-of-node-content
    38            :test-get-associations-of-node-content))
     38           :test-get-associations-of-node-content
     39           :test-parse-properties-of-node))
    3940
    4041(declaim (optimize (debug 3) (speed 0) (safety 3) (space 0) (compilation-speed 0)))
     
    259260        (is (= (length children) 19))
    260261        (loop for property across children
    261            do (is-true (rdf-importer::parse-property property)))
     262           do (is-true (rdf-importer::parse-property property 0)))
    262263        (dotimes (i (length children))
    263264          (if (or (= i 0) (= i 1) (= i 3) (= i 4) (= i 9) (= i 17))
     
    268269        (let ((prop (elt children 0)))
    269270          (dom:set-attribute-ns prop *rdf-ns* "parseType" "Unknown")
    270           (signals error (rdf-importer::parse-property prop))
     271          (signals error (rdf-importer::parse-property prop 0))
    271272          (dom:set-attribute-ns prop *rdf-ns* "parseType" "Resource")
    272           (is-true (rdf-importer::parse-property prop))
     273          (is-true (rdf-importer::parse-property prop 0))
    273274          (dom:set-attribute-ns prop *rdf-ns* "ID" "newID")
    274           (is-true (rdf-importer::parse-property prop))
     275          (is-true (rdf-importer::parse-property prop 0))
    275276          (dom:set-attribute-ns prop *rdf-ns* "bad" "bad")
    276           (signals error (rdf-importer::parse-property prop))
     277          (signals error (rdf-importer::parse-property prop 0))
    277278          (dom:remove-attribute-ns prop *rdf-ns* "bad")
    278           (is-true (rdf-importer::parse-property prop))
     279          (is-true (rdf-importer::parse-property prop 0))
    279280          (dom:append-child prop text-node)
    280           (signals error (rdf-importer::parse-property prop))
     281          (signals error (rdf-importer::parse-property prop 0))
    281282          (dom:remove-child prop text-node)
    282           (is-true (rdf-importer::parse-property prop)))
     283          (is-true (rdf-importer::parse-property prop 0)))
    283284        (let ((prop (elt children 1)))
    284285          (dom:set-attribute-ns prop *rdf-ns* "nodeID" "bad")
    285           (signals error (rdf-importer::parse-property prop))
     286          (signals error (rdf-importer::parse-property prop 0))
    286287          (dom:remove-attribute-ns prop *rdf-ns* "nodeID")
    287           (is-true (rdf-importer::parse-property prop))
     288          (is-true (rdf-importer::parse-property prop 0))
    288289          (dom:set-attribute-ns prop *rdf-ns* "ID" "newID")
    289           (is-true (rdf-importer::parse-property prop))
     290          (is-true (rdf-importer::parse-property prop 0))
    290291          (dom:append-child prop text-node)
    291           (signals error (rdf-importer::parse-property prop))
     292          (signals error (rdf-importer::parse-property prop 0))
    292293          (dom:remove-child prop text-node)
    293           (is-true (rdf-importer::parse-property prop)))
     294          (is-true (rdf-importer::parse-property prop 0)))
    294295        (let ((prop (elt children 3)))
    295296          (dom:append-child prop text-node)
    296           (signals error (rdf-importer::parse-property prop))
     297          (signals error (rdf-importer::parse-property prop 0))
    297298          (dom:remove-child prop text-node)
    298           (is-true (rdf-importer::parse-property prop)))
     299          (is-true (rdf-importer::parse-property prop 0)))
    299300        (let ((prop (elt children 4)))
    300301          (dom:append-child prop text-node)
    301           (signals error (rdf-importer::parse-property prop))
     302          (signals error (rdf-importer::parse-property prop 0))
    302303          (dom:remove-child prop text-node)
    303           (is-true (rdf-importer::parse-property prop)))
     304          (is-true (rdf-importer::parse-property prop 0)))
    304305        (let ((prop (elt children 5)))
    305306          (dom:set-attribute-ns prop *rdf-ns* "type" "newType")
    306           (is-true (rdf-importer::parse-property prop))
     307          (is-true (rdf-importer::parse-property prop 0))
    307308          (dom:set-attribute-ns prop *rdf-ns* "unknown" "unknown")
    308           (is-true (rdf-importer::parse-property prop))
     309          (is-true (rdf-importer::parse-property prop 0))
    309310          (dom:append-child prop text-node)
    310           (signals error (rdf-importer::parse-property prop))
     311          (signals error (rdf-importer::parse-property prop 0))
    311312          (dom:remove-child prop text-node)
    312           (is-true (rdf-importer::parse-property prop))
     313          (is-true (rdf-importer::parse-property prop 0))
    313314          (dom:remove-attribute-ns prop *rdf-ns* "unknown")
    314           (is-true (rdf-importer::parse-property prop))
     315          (is-true (rdf-importer::parse-property prop 0))
    315316          (dom:append-child prop text-node)
    316           (signals error (rdf-importer::parse-property prop))
     317          (signals error (rdf-importer::parse-property prop 0))
    317318          (dom:remove-child prop text-node)
    318           (is-true (rdf-importer::parse-property prop)))
     319          (is-true (rdf-importer::parse-property prop 0)))
    319320        (let ((prop (elt children 10)))
    320321          (dom:set-attribute-ns prop *rdf-ns* "type" "newType")
    321           (signals error (rdf-importer::parse-property prop))
     322          (signals error (rdf-importer::parse-property prop 0))
    322323          (dom:remove-attribute-ns prop *rdf-ns* "type")
    323           (is-true (rdf-importer::parse-property prop))
     324          (is-true (rdf-importer::parse-property prop 0))
    324325          (dom:set-attribute-ns prop *rdf-ns* "nodeID" "newNodeID")
    325           (signals error (rdf-importer::parse-property prop))
     326          (signals error (rdf-importer::parse-property prop 0))
    326327          (dom:remove-attribute-ns prop *rdf-ns* "nodeID")
    327           (is-true (rdf-importer::parse-property prop))
     328          (is-true (rdf-importer::parse-property prop 0))
    328329          (dom:set-attribute-ns prop *rdf-ns* "resource" "newResource")
    329           (signals error (rdf-importer::parse-property prop))
     330          (signals error (rdf-importer::parse-property prop 0))
    330331          (dom:remove-attribute-ns prop *rdf-ns* "resource")
    331           (is-true (rdf-importer::parse-property prop))
     332          (is-true (rdf-importer::parse-property prop 0))
    332333          (dom:set-attribute-ns prop *rdf-ns* "ID" "newID")
    333           (is-true (rdf-importer::parse-property prop))))))))
     334          (is-true (rdf-importer::parse-property prop 0))))))))
    334335
    335336
     
    383384      (let ((node (elt (dom:child-nodes dom-1) 0)))
    384385        (loop for property across (rdf-importer::child-nodes-or-text node)
    385            do (rdf-importer::parse-property property))
     386           do (rdf-importer::parse-property property 0))
    386387        (let ((types
    387388               (append
     
    478479        (dotimes (iter (length (dom:child-nodes node)))
    479480          (is-true (rdf-importer::parse-property
    480                     (elt (dom:child-nodes node) iter))))
     481                    (elt (dom:child-nodes node) iter) 0)))
    481482        (let ((literals (rdf-importer::get-literals-of-node-content
    482483                         node tm-id nil nil)))
     
    599600        (is-true (rdf-importer::parse-node node))
    600601        (loop for property across (rdf-importer::child-nodes-or-text node)
    601            do (is-true (rdf-importer::parse-property property)))
     602           do (is-true (rdf-importer::parse-property property 0)))
    602603        (let ((super-classes (rdf-importer::get-super-classes-of-node-content
    603604                              node tm-id xml-base)))
     
    638639                            (dom:create-text-node dom-1 "new text"))
    639640          (signals error (rdf-importer::parse-property
    640                           (elt (rdf-importer::child-nodes-or-text node) 1))))))))
     641                          (elt (rdf-importer::child-nodes-or-text node) 1) 0)))))))
    641642
    642643
     
    686687      (let ((node (elt (dom:child-nodes dom-1) 0)))
    687688        (loop for property across (rdf-importer::child-nodes-or-text node)
    688            do (is-true (rdf-importer::parse-property property)))
     689           do (is-true (rdf-importer::parse-property property 0)))
    689690        (let ((associations
    690691               (rdf-importer::get-associations-of-node-content node tm-id nil)))
     
    773774                             (string= (getf x :value) "assoc-12")))
    774775                    associations)))))))
     776
     777
     778(test test-parse-properties-of-node
     779  (let ((doc-1
     780         (concatenate 'string "<rdf:Description xmlns:rdf=\"" *rdf-ns* "\" "
     781                      "xmlns:arcs=\"http://test/arcs/\" "
     782                      "xml:base=\"http://xml-base/first\" "
     783                      "rdf:about=\"resource\" rdf:type=\"attr-type\">"
     784                      "<rdf:li rdf:resource=\"anyType\" />"
     785                      "<rdf:li>   </rdf:li>"
     786                      "<rdf:li rdf:nodeID=\"anyClass\" />"
     787                      "<rdf:li>   </rdf:li>"
     788                      "<rdf:li rdf:resource=\"assoc-1\"/>"
     789                      "<rdf:li rdf:type=\"assoc-2-type\">"
     790                      "   </rdf:li>"
     791                      "<rdf:li rdf:parseType=\"Literal\" />"
     792                      "<rdf:_123 arcs:arc5=\"text-arc5\" />"
     793                      "<rdf:arc6 rdf:ID=\"rdfID-3\"/>"
     794                      "<rdf:arcs rdf:ID=\"rdfID-4\"/>"
     795                      "</rdf:Description>")))
     796    (let ((dom-1 (cxml:parse doc-1 (cxml-dom:make-dom-builder))))
     797      (is-true dom-1)
     798      (is (= (length (dom:child-nodes dom-1))))
     799      (let ((node (elt (dom:child-nodes dom-1) 0)))
     800        (is-true (rdf-importer::parse-properties-of-node node))
     801        (is (= (length rdf-importer::*_n-map*) 7))
     802        (format t "~a~%" rdf-importer::*_n-map*)
     803        (dotimes (iter (length rdf-importer::*_n-map*))
     804          (is-true (find-if
     805                    #'(lambda(x)
     806                        (string= (getf x :type)
     807                                 (concatenate
     808                                  'string *rdf-ns* "_"
     809                                  (write-to-string (+ 1 iter)))))
     810                    rdf-importer::*_n-map*)))
     811        (rdf-importer::remove-node-properties-from-*_n-map* node)
     812        (is (= (length rdf-importer::*_n-map*) 0))))))
     813 
    775814
    776815
     
    783822  (it.bese.fiveam:run! 'test-get-literals-of-content)
    784823  (it.bese.fiveam:run! 'test-get-super-classes-of-node-content)
    785   (it.bese.fiveam:run! 'test-get-associations-of-node-content))
     824  (it.bese.fiveam:run! 'test-get-associations-of-node-content)
     825  (it.bese.fiveam:run! 'test-parse-properties-of-node))
Note: See TracChangeset for help on using the changeset viewer.