def test_run_manages_cycle(self): eventer = MockDispatcher() heart = Heart(eventer, interval=0.1) eventer.heart = heart heart.run() self.assertEqual(heart._state, "RUN") self.assertTrue(heart._shutdown.isSet()) heart._shutdown.clear() heart._stopped.clear() eventer.next_iter = 0 heart.run()
def test_time_raises_TypeError(self): from celery.worker import heartbeat def raises_TypeError(exc): raise TypeError("x") prev_time, heartbeat.time = heartbeat.time, raises_TypeError try: eventer = MockDispatcher() heart = Heart(eventer, interval=0.1) heart.run() self.assertIn("worker-online", eventer.sent) self.assertNotIn("worker-heartbeat", eventer.sent) finally: heartbeat.time = prev_time
def test_run(self): eventer = MockDispatcher() heart = Heart(eventer, interval=1) heart._shutdown.set() heart.run() self.assertEqual(heart._state, "RUN") self.assertIn("worker-online", eventer.sent) self.assertIn("worker-heartbeat", eventer.sent) self.assertIn("worker-offline", eventer.sent) heart.stop() heart.stop() self.assertEqual(heart._state, "CLOSE") heart = Heart(eventer, interval=0.00001) heart._shutdown.set() for i in range(10): heart.run()
def test_run(self): eventer = MockDispatcher() heart = Heart(eventer, interval=1) heart._shutdown.set() heart.run() self.assertTrue(heart._state == "RUN") self.assertTrue("worker-online" in eventer.sent) self.assertTrue("worker-heartbeat" in eventer.sent) self.assertTrue("worker-offline" in eventer.sent) self.assertTrue(heart._stopped.isSet()) heart.stop() heart.stop() self.assertTrue(heart._state == "CLOSE") heart = Heart(eventer, interval=0.00001) heart._shutdown.set() for i in range(10): heart.run()