def test_counter_taskset(self): IncrementCounterTask.count = 0 ts = task.TaskSet(tasks=[ IncrementCounterTask.subtask((), {}), IncrementCounterTask.subtask((), {"increment_by": 2}), IncrementCounterTask.subtask((), {"increment_by": 3}), IncrementCounterTask.subtask((), {"increment_by": 4}), IncrementCounterTask.subtask((), {"increment_by": 5}), IncrementCounterTask.subtask((), {"increment_by": 6}), IncrementCounterTask.subtask((), {"increment_by": 7}), IncrementCounterTask.subtask((), {"increment_by": 8}), IncrementCounterTask.subtask((), {"increment_by": 9}), ]) self.assertEqual(ts.total, 9) consumer = IncrementCounterTask().get_consumer() consumer.purge() consumer.close() taskset_res = ts.apply_async() subtasks = taskset_res.subtasks taskset_id = taskset_res.taskset_id consumer = IncrementCounterTask().get_consumer() for subtask in subtasks: m = consumer.fetch().payload self.assertDictContainsSubset( { "taskset": taskset_id, "task": IncrementCounterTask.name, "id": subtask.task_id }, m) IncrementCounterTask().run( increment_by=m.get("kwargs", {}).get("increment_by")) self.assertEqual(IncrementCounterTask.count, sum(xrange(1, 10)))
def test_counter_taskset(self): increment_counter.count = 0 ts = task.TaskSet(tasks=[ increment_counter.s(), increment_counter.s(increment_by=2), increment_counter.s(increment_by=3), increment_counter.s(increment_by=4), increment_counter.s(increment_by=5), increment_counter.s(increment_by=6), increment_counter.s(increment_by=7), increment_counter.s(increment_by=8), increment_counter.s(increment_by=9), ]) self.assertEqual(ts.total, 9) consumer = increment_counter.get_consumer() consumer.purge() consumer.close() taskset_res = ts.apply_async() subtasks = taskset_res.subtasks taskset_id = taskset_res.taskset_id consumer = increment_counter.get_consumer() for subtask in subtasks: m = consumer.queues[0].get().payload self.assertDictContainsSubset( { "taskset": taskset_id, "task": increment_counter.name, "id": subtask.id }, m) increment_counter( increment_by=m.get("kwargs", {}).get("increment_by")) self.assertEqual(increment_counter.count, sum(xrange(1, 10)))
def test_named_taskset(self): prefix = "test_named_taskset-" ts = task.TaskSet([return_True_task.subtask([1])]) res = ts.apply(taskset_id=prefix + uuid()) self.assertTrue(res.taskset_id.startswith(prefix))
def test_function_taskset(self): subtasks = [return_True_task.subtask([i]) for i in range(1, 6)] ts = task.TaskSet(subtasks) res = ts.apply_async() self.assertListEqual(res.join(), [True, True, True, True, True])