code: def setUp(self):
      super().setUp()
      self._testdata_dir = os.path.join(
          os.path.dirname(os.path.dirname(__file__)), "testdata"
      )
      self._output_data_dir = os.path.join(
          os.environ.get(
              "TEST_UNDECLARED_OUTPUTS_DIR", self.get_temp_dir()
          ),
          self._testMethodName,
      )
  
      self._context = executor.Executor.Context(
          tmp_dir=self._output_data_dir, unique_id="1"
      )
  
      # Create input dict.
      e1 = standard_artifacts.Examples()
      e1.uri = os.path.join(self._testdata_dir, "penguin", "data")
      e1.split_names = artifact_utils.encode_split_names(
          ["train", "eval"]
      )
  
      e2 = copy.deepcopy(e1)
  
      self._single_artifact = [e1]
      self._multiple_artifacts = [e1, e2]
  
      schema = standard_artifacts.Schema()
      schema.uri = os.path.join(self._testdata_dir, "penguin", "schema")
  
      base_model = standard_artifacts.Model()
      base_model.uri = os.path.join(
          self._testdata_dir, "trainer/previous"
      )
  
      self._input_dict = {
          standard_component_specs.EXAMPLES_KEY: self._single_artifact,
          standard_component_specs.SCHEMA_KEY: [schema],
          standard_component_specs.BASE_MODEL_KEY: [base_model],
      }
  
      # Create output dict.
      self._best_hparams = standard_artifacts.HyperParameters()
      self._best_hparams.uri = os.path.join(
          self._output_data_dir, "best_hparams"
      )
      self._tuner_results = standard_artifacts.TunerResults()
      self._tuner_results.uri = os.path.join(
          self._output_data_dir, "results"
      )
  
      self._output_dict = {
          standard_component_specs.BEST_HYPERPARAMETERS_KEY: [
              self._best_hparams
          ],
          standard_component_specs.TUNER_RESULTS_KEY: [
              self._tuner_results
          ],
      }
  
      # Create exec properties.
      self._exec_properties = {
          standard_component_specs.TRAIN_ARGS_KEY: proto_utils.proto_to_json(
              trainer_pb2.TrainArgs(num_steps=100)
          ),
          standard_component_specs.EVAL_ARGS_KEY: proto_utils.proto_to_json(
              trainer_pb2.EvalArgs(num_steps=50)
          ),
      }
  
imports: import copy
  import json
  import os
  from keras_tuner import HyperParameters
  import tensorflow
  from tfx.components.testdata.module_file import tuner_module
  from tfx.components.tuner import executor
  from tfx.dsl.io import fileio
  from tfx.proto import trainer_pb2
  from tfx.proto import tuner_pb2
  from tfx.types import artifact_utils
  from tfx.types import standard_artifacts
  from tfx.types import standard_component_specs
  from tfx.utils import io_utils
  from tfx.utils import name_utils
  from tfx.utils import proto_utils
  from tensorflow.python.lib.io import file_io
label_desc: Use image node_id 1 for calling the ExecutorTest obj's underlying member method code with example usage: obj.setUp() without return types