code: def testConstructFullSpec(self):
      training_input = {
          "scaleTier": "BASIC_GPU",
          "region": "us-central1",
          "masterConfig": {
              "imageUri": "gcr.io/my-project/caip-training-test:latest"
          },
          "args": [
              "--examples",
              placeholders.InputUriPlaceholder("examples"),
              "--n-steps",
              placeholders.InputValuePlaceholder("n_step"),
              "--model-dir",
              placeholders.OutputUriPlaceholder("model"),
          ],
      }
      training = (
          ai_platform_training_component.create_ai_platform_training(
              name="my_training_step",
              project_id="my-project",
              training_input=training_input,
              inputs={
                  "examples": self.examples,
              },
              outputs={"model": standard_artifacts.Model},
              parameters={"n_step": 100},
          )
      )
  
      expected_aip_config = {
          ai_platform_training_executor.PROJECT_CONFIG_KEY: "my-project",
          ai_platform_training_executor.TRAINING_JOB_CONFIG_KEY: {
              "training_input": training_input,
              ai_platform_training_executor.LABELS_CONFIG_KEY: None,
          },
          ai_platform_training_executor.JOB_ID_CONFIG_KEY: None,
          ai_platform_training_executor.LABELS_CONFIG_KEY: None,
      }
  
      self.assertEqual(
          training.exec_properties[
              ai_platform_training_executor.CONFIG_KEY
          ],
          json_utils.dumps(expected_aip_config),
      )
  
file_path: tfx/tfx/orchestration/kubeflow/v2/components/experimental/ai_platform_training_component_test.py
imports: import tensorflow
  from tfx.dsl.component.experimental import placeholders
  from tfx.orchestration.kubeflow.v2.components.experimental import ai_platform_training_component
  from tfx.orchestration.kubeflow.v2.components.experimental import ai_platform_training_executor
  from tfx.types import artifact_utils
  from tfx.types import channel_utils
  from tfx.types import standard_artifacts
  from tfx.utils import json_utils
label_desc: Use image node_id 3 for calling the AiPlatformTrainingComponentTest obj's underlying member method code with example usage: obj.testConstructFullSpec() without return types