def test_results_with_no_tasks_loaded(self, get_multi_async): """Ensure results loads the tasks and yields them out when no tasks are cached. """ marker1 = _build_marker(payload="1", status=1) marker2 = _build_marker(payload="2", status=1) marker3 = _build_marker(payload="3", status=1) future_set_1 = [_build_future(marker1), _build_future(marker2), _build_future(marker3)] get_multi_async.return_value = future_set_1 context = Context(_task_ids=["1", "2", "3"]) context_result = ContextResult(context) results = list(context_result.items()) results = sorted(results) self.assertEqual(results, [("1", "1"), ("2", "2"), ("3", "3")]) self.assertEqual(context_result._task_cache, { "1": marker1, "2": marker2, "3": marker3 })
def test_results_with_no_tasks_loaded(self, get_multi_async): """Ensure results loads the tasks and yields them out when no tasks are cached. """ marker1 = _build_marker(payload="1", status=1) marker2 = _build_marker(payload="2", status=1) marker3 = _build_marker(payload="3", status=1) future_set_1 = [ _build_future(marker1), _build_future(marker2), _build_future(marker3) ] get_multi_async.return_value = future_set_1 context = Context(_task_ids=["1", "2", "3"]) context_result = ContextResult(context) results = list(context_result.items()) results = sorted(results) self.assertEqual(results, [("1", "1"), ("2", "2"), ("3", "3")]) self.assertEqual(context_result._task_cache, { "1": marker1, "2": marker2, "3": marker3 })
def test_results_with_tasks_loaded_missing_result(self, get_multi_async): """Ensure results uses the cached tasks and yields them out when tasks are cached and there's no results. """ marker1 = FuriousAsyncMarker() context = Context(_task_ids=["1", "2", "3"]) context_result = ContextResult(context) context_result._task_cache = {"1": marker1, "2": None, "3": None} results = list(context_result.items()) results = sorted(results) self.assertEqual(results, [("1", None), ("2", None), ("3", None)]) self.assertFalse(get_multi_async.called)
def test_results_with_tasks_loaded(self, get_multi_async): """Ensure results uses the cached tasks and yields them out when tasks are cached. """ marker1 = _build_marker(payload="1", status=1) marker2 = _build_marker(payload="2", status=1) marker3 = _build_marker(payload="3", status=1) context = Context(_task_ids=["1", "2", "3"]) context_result = ContextResult(context) context_result._task_cache = {"1": marker1, "2": marker2, "3": marker3} results = list(context_result.items()) results = sorted(results) self.assertEqual(results, [("1", "1"), ("2", "2"), ("3", "3")]) self.assertFalse(get_multi_async.called)
def test_results_with_tasks_loaded_missing_result(self, get_multi_async): """Ensure results uses the cached tasks and yields them out when tasks are cached and there's no results. """ marker1 = FuriousAsyncMarker() context = Context(_task_ids=["1", "2", "3"]) context_result = ContextResult(context) context_result._task_cache = { "1": marker1, "2": None, "3": None } results = list(context_result.items()) results = sorted(results) self.assertEqual(results, [("1", None), ("2", None), ("3", None)]) self.assertFalse(get_multi_async.called)
def test_results_with_tasks_loaded(self, get_multi_async): """Ensure results uses the cached tasks and yields them out when tasks are cached. """ marker1 = _build_marker(payload="1", status=1) marker2 = _build_marker(payload="2", status=1) marker3 = _build_marker(payload="3", status=1) context = Context(_task_ids=["1", "2", "3"]) context_result = ContextResult(context) context_result._task_cache = { "1": marker1, "2": marker2, "3": marker3 } results = list(context_result.items()) results = sorted(results) self.assertEqual(results, [("1", "1"), ("2", "2"), ("3", "3")]) self.assertFalse(get_multi_async.called)