class_docstr: Fake executor for testing purpose only.
class_docstr_tok: ["Fake","executor","for","testing","purpose","only","."]
code: def Do(
      self,
      input_dict: Dict[str, List[types.Artifact]],
      output_dict: Dict[str, List[types.Artifact]],
      exec_properties: Dict[str, Any],
  ) -> None:
      input_path = artifact_utils.get_single_uri(input_dict["input"])
      output_path = artifact_utils.get_single_uri(output_dict["output"])
      fileio.copy(input_path, output_path)
  
imports: import os
  from typing import Any, Dict, List, Optional
  from tfx import types
  from tfx.dsl.components.base import base_component
  from tfx.dsl.components.base import base_driver
  from tfx.dsl.components.base import base_executor
  from tfx.dsl.components.base import executor_spec
  from tfx.dsl.io import fileio
  from tfx.orchestration import data_types
  from tfx.types import artifact_utils
  from tfx.types import channel_utils
  from tfx.types import component_spec
label_desc: Use image node_id 1 for calling the _FakeExecutor obj's underlying member method code with example usage: obj.Do(input_dict, output_dict, exec_properties) without return types