code: def setUp(self):
      super().setUp()
      test_dir = os.path.join(
          os.environ.get(
              "TEST_UNDECLARED_OUTPUTS_DIR", self.get_temp_dir()
          ),
          self._testMethodName,
      )
  
      connection_config = metadata_store_pb2.ConnectionConfig()
      connection_config.sqlite.SetInParent()
      self.metadata_connection = metadata.Metadata(connection_config)
  
      self.pipeline_root = os.path.join(test_dir, "Test")
  
      self.input_key = "input"
      self.output_key = "output"
  
      self.input_dir = os.path.join(test_dir, self.input_key)
      self.output_dir = os.path.join(test_dir, self.output_key)
      self.record_dir = os.path.join(test_dir, "record")
      fileio.makedirs(self.input_dir)
      fileio.makedirs(self.output_dir)
      fileio.makedirs(self.record_dir)
  
      input_artifact = (
          test_utils._InputArtifact()
      )  # pylint: disable=protected-access
      input_artifact.uri = os.path.join(self.input_dir, "result.txt")
      output_artifact = (
          test_utils._OutputArtifact()
      )  # pylint: disable=protected-access
      output_artifact.uri = os.path.join(self.output_dir, "result.txt")
      self.component = (
          test_utils._FakeComponent(  # pylint: disable=protected-access
              name="FakeComponent",
              input_channel=channel_utils.as_channel([input_artifact]),
              output_channel=channel_utils.as_channel(
                  [output_artifact]
              ),
          )
      )
      self.driver_args = data_types.DriverArgs(enable_cache=True)
  
      self.pipeline_info = data_types.PipelineInfo(
          pipeline_name="Test",
          pipeline_root=self.pipeline_root,
          run_id="123",
      )
  
file_path: tfx/tfx/experimental/pipeline_testing/stub_component_launcher_test.py
imports: import os
  from unittest import mock
  import tensorflow
  from tfx.dsl.io import fileio
  from tfx.experimental.pipeline_testing import stub_component_launcher
  from tfx.orchestration import data_types
  from tfx.orchestration import metadata
  from tfx.orchestration import publisher
  from tfx.orchestration.launcher import test_utils
  from tfx.types import channel_utils
  from tfx.utils import io_utils
  from tfx.utils import name_utils
  from ml_metadata.proto import metadata_store_pb2
label_desc: Use image node_id 1 for calling the StubComponentLauncherTest obj's underlying member method code with example usage: obj.setUp() without return types