Skip to content

Commit dac0044

Browse files
committed
RelationManagerTestCase
1 parent 08605ef commit dac0044

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

cache_dependencies/relations.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ def pop(self, key):
9494
return node
9595

9696
def clear(self):
97+
self._current = DummyCacheNode()
9798
self._data = dict()
9899

99100

cache_dependencies/tests/test_relations.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,3 +132,33 @@ def test_current_by_node(self):
132132

133133
def test_pop_none(self):
134134
self.assertIsInstance(self.relation_manager.pop('key1'), relations.DummyCacheNode)
135+
136+
def test_pop_current(self):
137+
self.relation_manager.current('key1')
138+
init_node_key1 = self.relation_manager.get('key1')
139+
self.relation_manager.current('key2')
140+
init_node_key2 = self.relation_manager.get('key2')
141+
142+
node_key2 = self.relation_manager.pop('key2')
143+
self.assertIs(node_key2, init_node_key2)
144+
self.assertIs(self.relation_manager.current(), init_node_key1)
145+
146+
def test_pop_not_current(self):
147+
self.relation_manager.current('key1')
148+
init_node_key1 = self.relation_manager.get('key1')
149+
self.relation_manager.current('key2')
150+
init_node_key2 = self.relation_manager.get('key2')
151+
152+
node_key1 = self.relation_manager.pop('key1')
153+
self.assertIs(node_key1, init_node_key1)
154+
self.assertIs(self.relation_manager.current(), init_node_key2)
155+
156+
def test_clear(self):
157+
self.relation_manager.current('key1')
158+
init_node_key1 = self.relation_manager.get('key1')
159+
self.assertIsInstance(self.relation_manager.current(), relations.CacheNode)
160+
161+
self.relation_manager.clear()
162+
self.assertIsInstance(self.relation_manager.current(), relations.DummyCacheNode)
163+
node_key1 = self.relation_manager.pop('key1')
164+
self.assertIsNot(node_key1, init_node_key1)

0 commit comments

Comments
 (0)