forked from 39aldo39/libdecsync-bindings-python3
- Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtest.py
More file actions
Latest commit
55 lines (42 loc) · 2.4 KB
/
Copy pathtest.py
File metadata and controls
55 lines (42 loc) · 2.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
fromlibdecsyncimportDecsync
importunittest
importshutil
# Very basic tests, mostly to make sure the bindings are correct
classDecsyncTest(unittest.TestCase):
deftest_instance(self):
decsync=Decsync(".tests/decsync", "sync-type", None, "app-id")
extra= {}
deflistener(path, datetime, key, value, extra):
extra[(tuple(path), key)] =value
decsync.add_listener([], listener)
decsync.init_done()
decsync.set_entry(["foo1", "bar1"], "key1", "value1 ☺")
decsync.set_entries([Decsync.EntryWithPath(["foo2", "bar2"], "key2", "value2")])
decsync.set_entries_for_path(["foo3", "bar3"], [Decsync.Entry("key3", "value3")])
decsync.execute_all_new_entries(extra)
decsync.execute_stored_entry(["foo1", "bar1"], "key1", extra)
decsync.execute_stored_entries([Decsync.StoredEntry(["foo2", "bar2"], "key2")], extra)
decsync.execute_stored_entries_for_path_exact(["foo3", "bar3"], extra, keys=["key3"])
self.assertEqual(extra[(("foo1", "bar1"), "key1")], "value1 ☺")
self.assertEqual(extra[(("foo2", "bar2"), "key2")], "value2")
self.assertEqual(extra[(("foo3", "bar3"), "key3")], "value3")
extra= {}
decsync.execute_stored_entries_for_path_exact(["foo1", "bar1"], extra)
decsync.execute_stored_entries_for_path_prefix(["foo2"], extra, keys=["key2"])
decsync.execute_stored_entries_for_path_prefix(["foo3"], extra)
self.assertEqual(extra[(("foo1", "bar1"), "key1")], "value1 ☺")
self.assertEqual(extra[(("foo2", "bar2"), "key2")], "value2")
self.assertEqual(extra[(("foo3", "bar3"), "key3")], "value3")
decsync.init_stored_entries()
self.assertEqual(decsync.latest_app_id(), "app-id")
deftest_static(self):
Decsync(".tests/decsync", "sync-type", "collection", "app-id").set_entry(["info"], "name", "Foo")
self.assertEqual(Decsync.get_static_info(".tests/decsync", "sync-type", "collection", "name"), "Foo")
self.assertEqual(Decsync.get_static_info(".tests/decsync", "sync-type", "collection", "color"), None)
self.assertEqual(Decsync.list_collections(".tests/decsync", "sync-type"), ["collection"])
Decsync.get_app_id("app", id=12345)
Decsync.get_app_id("app")
deftearDown(self):
shutil.rmtree(".tests", ignore_errors=True)
if__name__=='__main__':
unittest.main()