code: def setUp(self):
      super().setUp()
  
      pipeline_root = os.path.join(
          os.environ.get(
              "TEST_UNDECLARED_OUTPUTS_DIR", self.get_temp_dir()
          ),
          self.id(),
      )
  
      metadata_path = os.path.join(
          pipeline_root, "metadata", "metadata.db"
      )
      self._mlmd_cm = mlmd_cm.MLMDConnectionManager.sqlite(
          metadata_path
      )
      self.enter_context(self._mlmd_cm)
      self._mlmd_connection = self._mlmd_cm.primary_mlmd_handle
  
      pipeline = self._make_pipeline(pipeline_root, str(uuid.uuid4()))
      self._pipeline = pipeline
      self._trainer = self._pipeline.nodes[0].pipeline_node
      self._resolver_node = self._pipeline.nodes[1].pipeline_node
      self._consumer_node = self._pipeline.nodes[2].pipeline_node
  
imports: import os
  import uuid
  import tensorflow
  from tfx import types
  from tfx.dsl.compiler import constants
  from tfx.orchestration.experimental.core import post_execution_utils
  from tfx.orchestration.experimental.core import sync_pipeline_task_gen
  from tfx.orchestration.experimental.core import task_queue
  from tfx.orchestration.experimental.core import task_scheduler
  from tfx.orchestration.experimental.core import test_utils
  from tfx.orchestration.experimental.core.task_schedulers import resolver_task_scheduler
  from tfx.orchestration.experimental.core.testing import test_pipeline_with_resolver
  from tfx.orchestration import mlmd_connection_manager
  from tfx.orchestration.portable import execution_publish_utils
  from tfx.orchestration.portable import runtime_parameter_utils
  from tfx.orchestration.portable.mlmd import context_lib
  from tfx.utils import status
label_desc: Use image node_id 1 for calling the ResolverTaskSchedulerTest obj's underlying member method code with example usage: obj.setUp() without return types