Skip to content

Commit 65802ea

Browse files
authored
test_provider: add tests for AbstractObjectStore.sync() (#557)
Previously, the `sync()` method in `model.provider.AbstractObjectStore` was not tested at all. This adds a unittest with full line coverage of this method.
1 parent 5220dda commit 65802ea

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

sdk/test/model/test_provider.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,24 @@ def test_store_update(self) -> None:
5555
self.assertIsInstance(identifiable_store1, model.DictIdentifiableStore)
5656
self.assertIn(self.aas2, identifiable_store1)
5757

58+
def test_store_sync(self) -> None:
59+
aas_identifiable_store: model.DictIdentifiableStore[model.Identifiable] = model.DictIdentifiableStore()
60+
61+
self.assertEqual(aas_identifiable_store.sync([self.aas1, self.aas2], overwrite=False), (2, 0, 0))
62+
self.assertIn(self.aas1, aas_identifiable_store)
63+
self.assertIn(self.aas2, aas_identifiable_store)
64+
65+
self.assertEqual(aas_identifiable_store.sync([self.aas1], overwrite=False), (0, 0, 1))
66+
67+
self.assertEqual(aas_identifiable_store.sync([self.aas1], overwrite=True), (0, 1, 0))
68+
self.assertIn(self.aas1, aas_identifiable_store)
69+
70+
self.assertEqual(aas_identifiable_store.sync([self.aas1, self.submodel1], overwrite=True), (1, 1, 0))
71+
72+
self.assertEqual(aas_identifiable_store.sync([self.aas1, self.submodel2], overwrite=False), (1, 0, 1))
73+
74+
self.assertEqual(aas_identifiable_store.sync([], overwrite=False), (0, 0, 0))
75+
5876
def test_provider_multiplexer(self) -> None:
5977
aas_identifiable_store: model.DictIdentifiableStore[model.Identifiable] = (
6078
model.DictIdentifiableStore()

0 commit comments

Comments
 (0)