def invoke(handler, parameters): def respond(params): sleep(0.1) return {'parameters': parameters} def return_true(): sleep(0.1) return True response = TaskQueue.instance('test1').yield_task(respond, parameters) value = TaskQueue.instance('test2').yield_task(return_true) raise Return((yield value) and (yield response))
def invoke(handler, parameters): def respond(params): sleep(0.1) raise TotoException(4242, 'Test Toto Exception') raise Return((yield TaskQueue.instance('test1').yield_task(respond, parameters)))
def test_add_task(self): queue = TaskQueue() self.assertEquals(len(queue), 0) task_results = [] task = lambda x: task_results.append(x) queue.add_task(task, 1) queue.add_task(task, 2) queue.add_task(task, 3) start = time() while 1: if len(task_results) == 3: break if time() - start > 5: break sleep(0.01) self.assertEquals(len(task_results), 3) self.assertEquals(task_results, [1, 2, 3])
def test_add_task_exception(self): queue = TaskQueue() self.assertEquals(len(queue), 0) task_results = [] def task(x): task_results.append(x) raise Exception('failure') queue.add_task(task, 1) queue.add_task(task, 2) queue.add_task(task, 3) start = time() while 1: if len(task_results) == 3: break if time() - start > 5: break sleep(0.01) self.assertEquals(len(task_results), 3) self.assertEquals(task_results, [1, 2, 3])
def invoke(handler, parameters): def respond(params): sleep(0.1) raise Exception('Test Exception') raise Return((yield TaskQueue.instance('test1').yield_task(respond, parameters)))
def invoke(handler, parameters): def respond(params): sleep(0.1) handler.respond({'parameters': parameters}) TaskQueue.instance('test').add_task(respond, parameters)