code: def test_pipeline_duplicate_step_name(sagemaker_session_mock):
      step1 = CustomStep(name="foo")
      step2 = CustomStep(name="foo")
      with pytest.raises(ValueError) as error:
          pipeline = Pipeline(
              name="MyPipeline",
              steps=[step1, step2],
              sagemaker_session=sagemaker_session_mock,
          )
          PipelineGraph.from_pipeline(pipeline)
      assert "Pipeline steps cannot have duplicate names." in str(
          error.value
      )
  
imports: from __future__ import absolute_import
  import pytest
  from sagemaker.remote_function.job import _JobSettings
  from sagemaker.workflow.function_step import step
  from sagemaker.workflow.step_outputs import get_step
  from sagemaker.workflow.pipeline import Pipeline, PipelineGraph
  from sagemaker.workflow.condition_step import ConditionStep
  from sagemaker.workflow.conditions import ConditionEquals, ConditionIn, ConditionNot, ConditionOr, ConditionGreaterThan
  from sagemaker.workflow.execution_variables import ExecutionVariables
  from sagemaker.workflow.parameters import ParameterInteger, ParameterString
  from sagemaker.workflow._steps_compiler import CompiledStep
  from tests.unit.sagemaker.workflow.helpers import ordered, CustomStep, CustomStepCollection
label_desc: Use image node_id 4 for calling a global function with example usage: test_pipeline_duplicate_step_name(sagemaker_session_mock) without return types