def test_heartbeat_extended_loop(self): self.beats = 0 def send_heartbeat(): self.beats += 1 heartbeat = Heartbeat(60, send_heartbeat=send_heartbeat) heartbeat._running.set() heartbeat.register_read() # Miss one write/ self.assertTrue(heartbeat._check_for_life_signs()) for _ in range(1000): heartbeat.register_read() heartbeat.register_write() self.assertFalse(heartbeat._threshold) self.assertTrue(heartbeat._check_for_life_signs()) heartbeat.register_write() # Miss one read. self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(heartbeat._threshold, 1) self.assertEqual(self.beats, 1) heartbeat.register_read() heartbeat.register_write() self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(heartbeat._threshold, 0) heartbeat.stop()
def test_heartbeat_raise_after_threshold(self): heartbeat = Heartbeat(60, fake_function) exceptions = [] heartbeat.start(exceptions) heartbeat.register_write() self.assertTrue(heartbeat._check_for_life_signs()) heartbeat.register_write() self.assertFalse(heartbeat._check_for_life_signs()) self.assertTrue(exceptions) heartbeat.stop()
def test_heartbeat_threshold_reset(self): heartbeat = Heartbeat(60, fake_function) heartbeat._running.set() heartbeat.register_write() self.assertEqual(heartbeat._threshold, 0) self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(heartbeat._threshold, 1) heartbeat.register_write() heartbeat.register_read() self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(heartbeat._threshold, 0)
def test_heartbeat_threshold_reset(self): heartbeat = Heartbeat(60, fake_function) heartbeat._running.set() heartbeat.register_write() self.assertEqual(heartbeat._threshold, 0) self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(heartbeat._threshold, 1) heartbeat.register_write() heartbeat.register_read() self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(heartbeat._threshold, 0)
def test_heartbeat_running_cleared_after_raise(self): heartbeat = Heartbeat(60, fake_function) exceptions = [] self.assertTrue(heartbeat.start(exceptions)) self.assertTrue(heartbeat._running.is_set()) heartbeat.register_write() heartbeat._check_for_life_signs() heartbeat.register_write() heartbeat._check_for_life_signs() self.assertFalse(heartbeat._running.is_set()) heartbeat.stop()
def test_heartbeat_running_cleared_after_raise(self): heartbeat = Heartbeat(60, fake_function) exceptions = [] self.assertTrue(heartbeat.start(exceptions)) self.assertTrue(heartbeat._running.is_set()) heartbeat.register_write() heartbeat._check_for_life_signs() heartbeat.register_write() heartbeat._check_for_life_signs() self.assertFalse(heartbeat._running.is_set()) heartbeat.stop()
def test_heartbeat_raise_after_threshold(self): heartbeat = Heartbeat(60, fake_function) exceptions = [] self.assertTrue(heartbeat.start(exceptions)) heartbeat.register_write() self.assertTrue(heartbeat._check_for_life_signs()) heartbeat.register_write() self.assertFalse(heartbeat._check_for_life_signs()) self.assertTrue(exceptions) heartbeat.stop()
def test_heartbeat_extended_loop(self): self.beats = 0 def send_heartbeat(): self.beats += 1 heartbeat = Heartbeat(60, send_heartbeat_impl=send_heartbeat) heartbeat._running.set() heartbeat.register_read() # Miss one write/ self.assertTrue(heartbeat._check_for_life_signs()) for _ in range(32): heartbeat.register_read() heartbeat.register_write() self.assertFalse(heartbeat._threshold) self.assertTrue(heartbeat._check_for_life_signs()) time.sleep(0.01) heartbeat.register_write() # Miss one read. self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(heartbeat._threshold, 1) self.assertEqual(self.beats, 1) heartbeat.register_read() heartbeat.register_write() self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(heartbeat._threshold, 0) heartbeat.stop()
def test_heartbeat_send_heartbeat(self): self.beats = 0 def send_heartbeat(): self.beats += 1 heartbeat = Heartbeat(60, send_heartbeat=send_heartbeat) heartbeat._running.set() for _ in range(10): heartbeat.register_read() self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(self.beats, 10) heartbeat.stop()
def test_heartbeat_send_heartbeat(self): self.beats = 0 def send_heartbeat(): self.beats += 1 heartbeat = Heartbeat(60, send_heartbeat_impl=send_heartbeat) heartbeat._running.set() for _ in range(8): heartbeat.register_read() self.assertTrue(heartbeat._check_for_life_signs()) self.assertEqual(self.beats, 8) heartbeat.stop()
def test_heartbeat_do_not_execute_life_signs_when_stopped(self): heartbeat = Heartbeat(60, fake_function) self.assertFalse(heartbeat._check_for_life_signs())
def test_heartbeat_do_not_execute_life_signs_when_stopped(self): heartbeat = Heartbeat(60) heartbeat._stopped.set() self.assertFalse(heartbeat._check_for_life_signs())
def test_heartbeat_do_not_execute_life_signs_when_stopped(self): heartbeat = Heartbeat(60, fake_function) self.assertFalse(heartbeat._check_for_life_signs())