def test_success(self): taskflow = TaskFlowInstance() taskflow.id = 1 taskflow.engine_ver = 2 taskflow.has_node = MagicMock(return_value=True) dispatcher = MagicMock() get_node_data_return = {"result": True, "data": {"data": "data"}} get_node_detail_return = {"result": True, "data": {"detail": "detail"}} dispatcher.get_node_data = MagicMock(return_value=get_node_data_return) dispatcher.get_node_detail = MagicMock( return_value=get_node_detail_return) dispatcher_init = MagicMock(return_value=dispatcher) node_id = "node_id" username = "******" component_code = "component_code" subprocess_stack = ["1"] loop = 1 include_data = True with patch(TASKFLOW_MODEL_NODE_CMD_DISPATCHER, dispatcher_init): detail = taskflow.get_node_detail( node_id=node_id, username=username, component_code=component_code, subprocess_stack=subprocess_stack, loop=loop, include_data=include_data, project_id="project_id", ) dispatcher_init.assert_called_once_with(engine_ver=taskflow.engine_ver, node_id=node_id, taskflow_id=1) dispatcher.get_node_data.assert_called_once_with( username=username, component_code=component_code, subprocess_stack=subprocess_stack, pipeline_instance=taskflow.pipeline_instance, loop=loop, project_id="project_id", ) dispatcher.get_node_detail.assert_called_once_with( username=username, component_code=component_code, subprocess_stack=subprocess_stack, pipeline_instance=taskflow.pipeline_instance, loop=loop, ) self.assertEqual( detail, { "code": 0, "data": { "data": "data", "detail": "detail" }, "message": "", "result": True })
def test_node_does_not_exist(self): taskflow = TaskFlowInstance() taskflow.id = 1 taskflow.has_node = MagicMock(return_value=False) detail = taskflow.get_node_detail(node_id="node_id", username="******") self.assertFalse(detail["result"]) self.assertEqual(detail["code"], err_code.REQUEST_PARAM_INVALID.code)
def test_get_node_data_err(self): taskflow = TaskFlowInstance() taskflow.id = 1 taskflow.engine_ver = 2 taskflow.has_node = MagicMock(return_value=True) dispatcher = MagicMock() get_node_data_return = {"result": False} dispatcher.get_node_data = MagicMock(return_value=get_node_data_return) with patch(TASKFLOW_MODEL_NODE_CMD_DISPATCHER, MagicMock(return_value=dispatcher)): detail = taskflow.get_node_detail(node_id="node_id", username="******", project_id="project_id") self.assertEqual(detail, get_node_data_return)