Example #1
0
 def test_detached_downwards(self):
     fit = self.make_fit()
     holder = CachingModule(1, State.overload)
     fit.unordered.add(holder)
     st_cleans_before = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_before = len(holder._clear_volatile_attrs.mock_calls)
     # Action
     holder.state = State.active
     # Checks
     self.assertEqual(len(fit.lt), 0)
     self.assertEqual(len(fit.rt), 0)
     self.assertEqual(len(fit.st), 0)
     st_cleans_between = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_between = len(holder._clear_volatile_attrs.mock_calls)
     self.assertEqual(st_cleans_between - st_cleans_before, 0)
     self.assertEqual(module_cleans_between - module_cleans_before, 0)
     # Action
     holder.state = State.offline
     # Checks
     self.assertEqual(len(fit.lt), 0)
     self.assertEqual(len(fit.rt), 0)
     self.assertEqual(len(fit.st), 0)
     st_cleans_after = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_after = len(holder._clear_volatile_attrs.mock_calls)
     self.assertEqual(st_cleans_after - st_cleans_between, 0)
     self.assertEqual(module_cleans_after - module_cleans_between, 0)
     # Misc
     fit.unordered.remove(holder)
     self.assert_object_buffers_empty(fit)
Example #2
0
 def test_detached_downwards(self):
     fit = self.make_fit()
     holder = CachingModule(1, State.overload)
     fit.unordered.add(holder)
     st_cleans_before = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_before = len(holder._clear_volatile_attrs.mock_calls)
     # Action
     holder.state = State.active
     # Checks
     self.assertEqual(len(fit.lt), 0)
     self.assertEqual(len(fit.rt), 0)
     self.assertEqual(len(fit.st), 0)
     st_cleans_between = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_between = len(holder._clear_volatile_attrs.mock_calls)
     self.assertEqual(st_cleans_between - st_cleans_before, 0)
     self.assertEqual(module_cleans_between - module_cleans_before, 0)
     # Action
     holder.state = State.offline
     # Checks
     self.assertEqual(len(fit.lt), 0)
     self.assertEqual(len(fit.rt), 0)
     self.assertEqual(len(fit.st), 0)
     st_cleans_after = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_after = len(holder._clear_volatile_attrs.mock_calls)
     self.assertEqual(st_cleans_after - st_cleans_between, 0)
     self.assertEqual(module_cleans_after - module_cleans_between, 0)
     # Misc
     fit.unordered.remove(holder)
     self.assert_object_buffers_empty(fit)
Example #3
0
 def test_attached_upwards(self):
     source = Mock(spec_set=Source)
     fit = self.make_fit(source=source)
     holder = CachingModule(1, State.offline)
     fit.unordered.add(holder)
     st_cleans_before = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_before = len(holder._clear_volatile_attrs.mock_calls)
     # Action
     holder.state = State.online
     # Checks
     self.assertEqual(len(fit.lt), 1)
     self.assertIn(holder, fit.lt)
     self.assertEqual(fit.lt[holder], {State.offline, State.online})
     self.assertEqual(len(fit.rt), 1)
     self.assertIn(holder, fit.rt)
     self.assertEqual(fit.rt[holder], {State.offline, State.online})
     self.assertEqual(len(fit.st), 1)
     self.assertIn(holder, fit.st)
     self.assertEqual(fit.st[holder], {State.offline, State.online})
     st_cleans_between = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_between = len(holder._clear_volatile_attrs.mock_calls)
     self.assertEqual(st_cleans_between - st_cleans_before, 1)
     self.assertEqual(module_cleans_between - module_cleans_before, 1)
     # Action
     holder.state = State.overload
     # Checks
     self.assertEqual(len(fit.lt), 1)
     self.assertIn(holder, fit.lt)
     self.assertEqual(
         fit.lt[holder],
         {State.offline, State.online, State.active, State.overload})
     self.assertEqual(len(fit.rt), 1)
     self.assertIn(holder, fit.rt)
     self.assertEqual(
         fit.rt[holder],
         {State.offline, State.online, State.active, State.overload})
     self.assertEqual(len(fit.st), 1)
     self.assertIn(holder, fit.st)
     self.assertEqual(
         fit.st[holder],
         {State.offline, State.online, State.active, State.overload})
     st_cleans_after = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_after = len(holder._clear_volatile_attrs.mock_calls)
     self.assertEqual(st_cleans_after - st_cleans_between, 1)
     self.assertEqual(module_cleans_after - module_cleans_between, 1)
     # Misc
     fit.unordered.remove(holder)
     self.assert_object_buffers_empty(fit)
Example #4
0
 def test_attached_downwards(self):
     source = Mock(spec_set=Source)
     fit = self.make_fit(source=source)
     holder = CachingModule(1, State.overload)
     fit.unordered.add(holder)
     st_cleans_before = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_before = len(holder._clear_volatile_attrs.mock_calls)
     # Action
     holder.state = State.active
     # Checks
     self.assertEqual(len(fit.lt), 1)
     self.assertIn(holder, fit.lt)
     self.assertEqual(fit.lt[holder], {State.offline, State.online, State.active})
     self.assertEqual(len(fit.rt), 1)
     self.assertIn(holder, fit.rt)
     self.assertEqual(fit.rt[holder], {State.offline, State.online, State.active})
     self.assertEqual(len(fit.st), 1)
     self.assertIn(holder, fit.st)
     self.assertEqual(fit.st[holder], {State.offline, State.online, State.active})
     st_cleans_between = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_between = len(holder._clear_volatile_attrs.mock_calls)
     self.assertEqual(st_cleans_between - st_cleans_before, 1)
     self.assertEqual(module_cleans_between - module_cleans_before, 1)
     # Action
     holder.state = State.offline
     # Checks
     self.assertEqual(len(fit.lt), 1)
     self.assertIn(holder, fit.lt)
     self.assertEqual(fit.lt[holder], {State.offline})
     self.assertEqual(len(fit.rt), 1)
     self.assertIn(holder, fit.rt)
     self.assertEqual(fit.rt[holder], {State.offline})
     self.assertEqual(len(fit.st), 1)
     self.assertIn(holder, fit.st)
     self.assertEqual(fit.st[holder], {State.offline})
     st_cleans_after = len(fit.stats._clear_volatile_attrs.mock_calls)
     module_cleans_after = len(holder._clear_volatile_attrs.mock_calls)
     self.assertEqual(st_cleans_after - st_cleans_between, 1)
     self.assertEqual(module_cleans_after - module_cleans_between, 1)
     # Misc
     fit.unordered.remove(holder)
     self.assert_object_buffers_empty(fit)