def tests_worker_should_handle_many_queues(self): queue1 = Queue(name='test', priority=1) queue2 = Queue(name='test', priority=2) worker = Worker('test') worker.update_keys() self.assertEqual(worker.keys, [queue2.waiting.key, queue1.waiting.key])
def test_blpop_timeout(self): class TestWorker(Worker): def wait_for_job(self): result = super(TestWorker, self).wait_for_job() if result is None: # force end to quit quickly self.end_forced = True return result Queue.get_queue('test') # test specific methods worker = Worker(name='test', timeout=1) worker.update_keys() test_value = worker.wait_for_job() self.assertIsNone(test_value) # test whole run worker = TestWorker(name='test', timeout=1) worker.run() self.assertEqual(worker.num_loops, 0)