code: def setUp(self):
      super().setUp()
      self._test_dir = os.path.join(
          os.environ.get(
              "TEST_UNDECLARED_OUTPUTS_DIR", self.get_temp_dir()
          ),
          self._testMethodName,
      )
  
      self._pipeline_name = "docker_e2e_test"
      self._pipeline_root = os.path.join(
          self._test_dir, "tfx", "pipelines", self._pipeline_name
      )
      self._metadata_path = os.path.join(
          self._test_dir,
          "tfx",
          "metadata",
          self._pipeline_name,
          "metadata.db",
      )
  
file_path: tfx/tfx/orchestration/launcher/docker_component_launcher_e2e_test.py
imports: import os
  import tensorflow
  from tfx.dsl.components.base import base_component
  from tfx.dsl.components.base import executor_spec
  from tfx.orchestration import metadata
  from tfx.orchestration import pipeline
  from tfx.orchestration.beam import beam_dag_runner
  from tfx.types import component_spec
label_desc: Use image node_id 1 for calling the DockerComponentLauncherE2eTest obj's underlying member method code with example usage: obj.setUp() without return types