diff options
Diffstat (limited to 'ick2/persistent_tests.py')
-rw-r--r-- | ick2/persistent_tests.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ick2/persistent_tests.py b/ick2/persistent_tests.py index 802ca8b..8406acf 100644 --- a/ick2/persistent_tests.py +++ b/ick2/persistent_tests.py @@ -49,6 +49,24 @@ class PersistentStateTestsMixIn: self.assertTrue(isinstance(r2, ick2.Resource)) self.assertEqual(r.as_dict(), r2.as_dict()) + def test_updates_resource(self): + as_dict = {'foo': 'bar'} + r = ick2.resource_from_dict(as_dict) + + as_dict = {'foo': 'yo'} + r2 = ick2.resource_from_dict(as_dict) + + token = self.get_token() + self.state.write_resource(token, 'silly', '#1', r) + self.state.update_resource(token, 'silly', '#1', r2) + + self.assertTrue(self.state.has_resource(token, 'silly', '#1')) + self.assertEqual(self.state.get_resource_ids(token, 'silly'), ['#1']) + + actual = self.state.get_resource(token, 'silly', '#1') + self.assertTrue(isinstance(actual, ick2.Resource)) + self.assertEqual(actual.as_dict(), r2.as_dict()) + def test_removes_resource(self): as_dict = {'foo': 'bar'} r = ick2.resource_from_dict(as_dict) |