diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_sqlite_store.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/test_sqlite_store.py b/tests/test_sqlite_store.py new file mode 100644 index 0000000..849c7a2 --- /dev/null +++ b/tests/test_sqlite_store.py @@ -0,0 +1,32 @@ +import unittest + +from pyapd import objects +from pyapd.stores import sqlite, exceptions + + +class TestSqliteStore(unittest.TestCase): + def setUp(self): + self.store = sqlite.Store() + self.oid = 'https://test/object/12345' + self.obj = objects.Object(id=self.oid) + self.store.add(self.obj) + + def test_add_object(self): + oid = 'https://test/object/12345' + obj = objects.Object(id=oid) + self.store.add(obj) + self.assertIn('object', self.store.objects) + self.assertIn(oid, self.store.objects['object']) + + def test_get_object(self): + res = self.store.get('object', self.oid) + self.assertEqual(res, self.obj) + + def test_get_object_not_existing(self): + oid = 'https://test/object/does_not_exist' + with self.assertRaises(exceptions.DoesNotExist): + self.store.get('object', oid) + + def test_get_object_wrong_type(self): + with self.assertRaises(exceptions.UnknownObjectType): + self.store.get('no_such_type', self.oid) |