Don't use xsd:string for string data types in toTypedNode
[htsworkflow.git] / htsworkflow / util / test / test_rdfhelp.py
1 import unittest
2
3 from htsworkflow.util.rdfhelp import toTypedNode, blankOrUri
4 try:
5   import RDF
6   
7   class TestRDFHelp(unittest.TestCase):
8       def test_typed_node_boolean(self):
9           node = toTypedNode(True)
10           self.failUnlessEqual(node.literal_value['string'], u'1')
11           self.failUnlessEqual(str(node.literal_value['datatype']),
12                                'http://www.w3.org/2001/XMLSchema#boolean')
13   
14       def test_typed_node_string(self):
15           node = toTypedNode('hello')
16           self.failUnlessEqual(node.literal_value['string'], u'hello')
17           self.failUnless(node.literal_value['datatype'] is None)
18   
19       def test_blank_or_uri_blank(self):
20           node = blankOrUri()
21           self.failUnlessEqual(node.is_blank(), True)
22   
23       def test_blank_or_uri_url(self):
24           s = 'http://google.com'
25           node = blankOrUri(s)
26           self.failUnlessEqual(node.is_resource(), True)
27           self.failUnlessEqual(str(node.uri), s)
28   
29       def test_blank_or_uri_node(self):
30           s = RDF.Node(RDF.Uri('http://google.com'))
31           node = blankOrUri(s)
32           self.failUnlessEqual(node.is_resource(), True)
33           self.failUnlessEqual(node, s)
34           
35   def suite():
36       return unittest.makeSuite(testRdfHelp, 'test')
37 except ImportError, e:
38     print "Unable to test rdfhelp"
39     
40     def suite():
41         return None
42     
43 if __name__ == "__main__":
44     unittest.main(defaultTest='suite')