code: def test_get_step_from_properties():
      step = Mock()
      step.name = "MyStep"
  
      prop = Properties(
          step_name="MyStep",
          step=step,
          shape_name="DescribeProcessingJobResponse",
      )
      assert prop.ProcessingOutputConfig.Outputs[
          "MyOutputName"
      ].S3Output.S3Uri._referenced_steps == [step]
      assert (
          get_step(
              prop.ProcessingOutputConfig.Outputs[
                  "MyOutputName"
              ].S3Output.S3Uri
          )
          == step
      )
      # step instance is dropped after deepcopy
      assert deepcopy(
          prop.ProcessingOutputConfig.Outputs[
              "MyOutputName"
          ].S3Output.S3Uri
      )._referenced_steps == ["MyStep"]
  
file_path: sagemaker-python-sdk/tests/unit/sagemaker/workflow/test_properties.py
imports: from __future__ import absolute_import
  import pytest
  from mock import Mock
  from copy import deepcopy
  from sagemaker.workflow.properties import Properties
  from sagemaker.workflow.step_outputs import get_step
label_desc: Use image node_id 1 for calling a global function with example usage: test_get_step_from_properties() without return types