code: def testCombineGlobally(self):
      with DeepCopyTest._MakeBeamPipeline() as p:
          combined = (
              p
              | beam.Create([1, 2, 3])
              | beam.Map(
                  lambda x: DeepCopyTest._CountingIdentityFn(
                      "PreCombine", x
                  )
              )
              | beam.WindowInto(beam.window.FixedWindows(5, 0))
              | beam.CombineGlobally(
                  beam.transforms.combiners.MeanCombineFn()
              ).without_defaults()
              | beam.Map(
                  lambda x: DeepCopyTest._CountingIdentityFn(
                      "PostCombine", x
                  )
              )
          )
          copied = deep_copy.deep_copy(combined)
  
          # Check that deep copy was performed.
          self.assertIsNot(combined, copied)
          self.assertIsNot(
              combined.producer.inputs[0], copied.producer.inputs[0]
          )
          self.assertEqual(
              combined.producer.inputs[0].producer.full_label,
              "CombineGlobally(MeanCombineFn)/UnKey",
          )
          self.assertEqual(
              copied.producer.inputs[0].producer.full_label,
              "CombineGlobally(MeanCombineFn)/UnKey.Copy0",
          )
  
          # Check that deep copy stops at materialization boundary.
          self.assertIs(
              combined.producer.inputs[0].producer.inputs[0],
              copied.producer.inputs[0].producer.inputs[0],
          )
          self.assertEqual(
              str(combined.producer.inputs[0].producer.inputs[0]),
              (
                  "PCollection[CombineGlobally(MeanCombineFn)/CombinePerKey/Combine/"
                  "ParDo(CombineValuesDoFn).None]"
              ),
          )
          self.assertIs(
              combined.producer.inputs[0].producer.inputs[0].producer,
              copied.producer.inputs[0].producer.inputs[0].producer,
          )
          self.assertEqual(
              copied.producer.inputs[0]
              .producer.inputs[0]
              .producer.full_label,
              (
                  "CombineGlobally(MeanCombineFn)/CombinePerKey/Combine/"
                  "ParDo(CombineValuesDoFn)"
              ),
          )
  
      # Check counts of processed items.
      self.assertEqual(DeepCopyTest._counts["PreCombine"], 3)
      self.assertEqual(DeepCopyTest._counts["PostCombine"], 2)
  
imports: import collections
  import apache_beam
  from apache_beam import pvalue
  from apache_beam.transforms import resources
  from tensorflow_transform.beam import deep_copy
  from tensorflow_transform.beam import test_helpers
  import unittest
label_desc: Use image node_id 10 for calling the DeepCopyTest obj's underlying member method code with example usage: obj.testCombineGlobally() without return types