code: def testDoWithTuneArgs(self):
      executor = ai_platform_tuner_executor.Executor()
      self._exec_properties["tune_args"] = proto_utils.proto_to_json(
          tuner_pb2.TuneArgs(num_parallel_trials=3)
      )
  
      executor.Do(
          self._inputs,
          self._outputs,
          self._serialize_custom_config_under_test(),
      )
  
      self.mock_runner.start_cloud_training.assert_called_with(
          self._inputs,
          self._outputs,
          self._serialize_custom_config_under_test(),
          self._executor_class_path,
          {
              "project": self._project_id,
              "jobDir": self._job_dir,
              "scaleTier": "CUSTOM",
              "masterType": "standard",
              "workerType": "standard",
              "workerCount": 2,
          },
          self._job_id,
          None,
          False,
          None,
      )
  
imports: import copy
  import os
  from typing import Any, Dict
  from unittest import mock
  import tensorflow
  from tfx.extensions.google_cloud_ai_platform import constants
  from tfx.extensions.google_cloud_ai_platform.trainer import executor
  from tfx.extensions.google_cloud_ai_platform.tuner import executor
  from tfx.proto import tuner_pb2
  from tfx.types import standard_component_specs
  from tfx.utils import json_utils
  from tfx.utils import name_utils
  from tfx.utils import proto_utils
label_desc: Use image node_id 4 for calling the ExecutorTest obj's underlying member method code with example usage: obj.testDoWithTuneArgs() without return types