code: def setUp(self):
      super().setUp()
      self._source_data_dir = os.path.join(
          os.path.dirname(
              os.path.dirname(
                  os.path.dirname(os.path.dirname(__file__))
              )
          ),
          "components",
          "testdata",
      )
      self._output_data_dir = os.path.join(
          os.environ.get(
              "TEST_UNDECLARED_OUTPUTS_DIR", self.get_temp_dir()
          ),
          self._testMethodName,
      )
      self.component_id = "test_component"
  
      # Create input dict.
      self._examples = standard_artifacts.Examples()
      self._examples.uri = os.path.join(
          self._source_data_dir, "csv_example_gen"
      )
      self._examples.split_names = artifact_utils.encode_split_names(
          ["unlabelled"]
      )
      self._model = standard_artifacts.Model()
      self._model.uri = os.path.join(
          self._source_data_dir, "trainer/current"
      )
      self._model_version = (
          "version_"
          + hashlib.sha256(self._model.uri.encode()).hexdigest()
      )
  
      self._model_blessing = standard_artifacts.ModelBlessing()
      self._model_blessing.uri = os.path.join(
          self._source_data_dir, "model_validator/blessed"
      )
      self._model_blessing.set_int_custom_property("blessed", 1)
  
      self._inference_result = standard_artifacts.InferenceResult()
      self._prediction_log_dir = os.path.join(
          self._output_data_dir, "prediction_logs"
      )
      self._inference_result.uri = self._prediction_log_dir
  
      # Create context
      self._tmp_dir = os.path.join(self._output_data_dir, ".temp")
      self._context = executor.Executor.Context(
          tmp_dir=self._tmp_dir, unique_id="2"
      )
  
imports: import hashlib
  import os
  from unittest import mock
  import tensorflow
  from tfx.extensions.google_cloud_ai_platform import constants
  from tfx.extensions.google_cloud_ai_platform.bulk_inferrer import executor
  from tfx.proto import bulk_inferrer_pb2
  from tfx.types import artifact_utils
  from tfx.types import standard_artifacts
  from tfx.utils import json_utils
  from tfx.utils import name_utils
  from tfx.utils import path_utils
  from tfx.utils import proto_utils
  from tfx.utils import telemetry_utils
  from tfx_bsl.public.proto import model_spec_pb2
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