Persistent state
[python_utils.git] / tests / persistent_state_test.py
1 #!/usr/bin/env python3
2
3 import os
4 import unittest
5
6 import bootstrap
7 import persistent_state as ps
8
9 import unittest_utils as uu
10
11
12 class TestPersistentState(unittest.TestCase):
13     def test_it_all_baby(self):
14         filename = '/tmp/.persistent_state_test.bin'
15         os.system(f'/bin/rm {filename}')
16         s = ps.PersistentState(filename)
17         self.assertEqual(0, len(s))
18         s['test'] = 123
19         self.assertEqual(123, s['test'])
20         self.assertEqual(1, len(s))
21         s['ing'] = 234
22         self.assertEqual(2, len(s))
23         del s['ing']
24         self.assertEqual(1, len(s))
25         s.save()
26         t = ps.PersistentState(filename)
27         self.assertEqual(1, len(t))
28         self.assertEqual(123, t['test'])
29
30
31 if __name__ == '__main__':
32     bootstrap.initialize(unittest.main)()
33