def test_rollback(self): 'VersionedStorage "rollback" method' d = VersionedStorage() d['a'] = 1 d._commit() d['b'] = 2 self.assertEqual(d.as_dict(), {'a': 1, 'b': 2}) d._rollback() self.assertEqual(d.as_dict(), {'a': 1}) self.assertEqual(d._VersionedStorage__stack, [{}])
def test_rollback(self): 'VersionedStorage "rollback" method' d = VersionedStorage() d['a'] = 1 d._commit() d['b'] = 2 self.assertEqual(d.as_dict(), {'a': 1, 'b': 2}) d._rollback() self.assertEqual(d.as_dict(), {'a': 1}) self.assertEqual(d._VersionedStorage__stack, [{}])
def test_commit(self): 'VersionedStorage "commit" method' d = VersionedStorage() d['a'] = 1 d._commit() self.assert_(not d._modified) self.assertEqual(d._VersionedStorage__stack, [{}, {'a': 1}], 'Incorrect stack state') self.assertEqual(d['a'] , 1) self.assertRaises(KeyError, lambda: d['b']) # second commit do nothing d._commit() self.assert_(not d._modified) self.assertEqual(d._VersionedStorage__stack, [{}, {'a': 1}]) self.assertEqual(d.as_dict(), {'a': 1}) self.assertRaises(KeyError, lambda: d['b'])
def test_commit(self): 'VersionedStorage "commit" method' d = VersionedStorage() d['a'] = 1 d._commit() self.assert_(not d._modified) self.assertEqual(d._VersionedStorage__stack, [{}, { 'a': 1 }], 'Incorrect stack state') self.assertEqual(d['a'], 1) self.assertRaises(KeyError, lambda: d['b']) # second commit do nothing d._commit() self.assert_(not d._modified) self.assertEqual(d._VersionedStorage__stack, [{}, {'a': 1}]) self.assertEqual(d.as_dict(), {'a': 1}) self.assertRaises(KeyError, lambda: d['b'])