diff options
author | Lars Wirzenius <liw@liw.fi> | 2019-07-14 12:50:04 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2019-08-03 21:06:50 +0300 |
commit | 581f6cd53f57599326439dccb355e882e7858faa (patch) | |
tree | 19236daf6feaab66dd07b8cbcdb609db4b653be1 /ick2/persistent_tests.py | |
parent | 97f3390944d2189d6bf0be2f2d451784c71e1856 (diff) | |
download | ick2-581f6cd53f57599326439dccb355e882e7858faa.tar.gz |
Add: MemoryPersitentState
Diffstat (limited to 'ick2/persistent_tests.py')
-rw-r--r-- | ick2/persistent_tests.py | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/ick2/persistent_tests.py b/ick2/persistent_tests.py index de279a1..61cd43f 100644 --- a/ick2/persistent_tests.py +++ b/ick2/persistent_tests.py @@ -22,18 +22,7 @@ import unittest import ick2 -class FilePersistentStateTests(unittest.TestCase): - - def setUp(self): - self.tempdir = tempfile.mkdtemp() - self.state = ick2.FilePersistentState() - self.state.set_directory(self.tempdir) - - def tearDown(self): - shutil.rmtree(self.tempdir) - - def test_returns_dirname(self): - self.assertEqual(self.state.get_directory(), self.tempdir) +class PersistentStateTestsMixIn: def test_has_no_resources_initially(self): self.assertEqual(self.state.get_resource_ids('silly'), []) @@ -60,3 +49,20 @@ class FilePersistentStateTests(unittest.TestCase): self.state.remove_resource('silly', '#1') self.assertFalse(self.state.has_resource('silly', '#1')) self.assertEqual(self.state.get_resource_ids('silly'), []) + + def test_raises_error_removing_nonexistent_resource_kind(self): + with self.assertRaises(ick2.NotFound): + self.state.remove_resource('silly', '#1') + + def test_raises_error_removing_nonexistent_resource(self): + as_dict = {'foo': 'bar'} + r = ick2.resource_from_dict(as_dict) + self.state.write_resource('silly', '#1', r) + with self.assertRaises(ick2.NotFound): + self.state.remove_resource('silly', '#2') + + +class MemoryPersistentStateTests(unittest.TestCase, PersistentStateTestsMixIn): + + def setUp(self): + self.state = ick2.MemoryPersistentState() |