1import unittest
2import rdflib
3
4rdflib.plugin.register('Memory', rdflib.store.Store,
5                       'rdflib.plugins.memory', 'Memory')
6
7
8class StoreTestCase(unittest.TestCase):
9
10    def test_memory_store(self):
11        g = rdflib.Graph("Memory")
12        subj1 = rdflib.URIRef("http://example.org/foo#bar1")
13        pred1 = rdflib.URIRef("http://example.org/foo#bar2")
14        obj1 = rdflib.URIRef("http://example.org/foo#bar3")
15        triple1 = (subj1, pred1, obj1)
16        triple2 = (subj1,
17                   rdflib.URIRef("http://example.org/foo#bar4"),
18                   rdflib.URIRef("http://example.org/foo#bar5"))
19        g.add(triple1)
20        self.assertTrue(len(g) == 1)
21        g.add(triple2)
22        self.assertTrue(len(list(g.triples((subj1, None, None)))) == 2)
23        self.assertTrue(len(list(g.triples((None, pred1, None)))) == 1)
24        self.assertTrue(len(list(g.triples((None, None, obj1)))) == 1)
25        g.remove(triple1)
26        self.assertTrue(len(g) == 1)
27        g.serialize()
28
29
30if __name__ == '__main__':
31    unittest.main(defaultTest='test_suite')
32