code: def test_monkey_patched_summaries_args(self, summary_maker):
      summary = summary_maker()
      before = _summaries()
      with monkey_patched_summaries(summary):
          for want, got in zip(before, _summaries()):
              self.assertNotEqual(want, got)
          tf.summary.scalar("scalar", 1, ["collection"], "family")
          tf.summary.image("image", 1, 3, ["collection"], "family")
          tf.summary.histogram("histogram", 1, ["collection"], "family")
          tf.summary.audio("audio", 1, 3, 3, ["collection"], "family")
  
          want_summary_fn_count = 4
          try:
              tf.contrib.summary.scalar("scalar_v2", 1, "family", 10)
              tf.contrib.summary.image(
                  "image_v2", 1, True, 3, "family", 10
              )
              tf.contrib.summary.histogram(
                  "histogram_v2", 1, "family", 10
              )
              tf.contrib.summary.audio(
                  "audio_v2", 1, 3, 3, "family", 10
              )
              want_summary_fn_count += 4
          except (AttributeError, ImportError):
              # TF 2.0 eliminates tf.contrib.
              pass
      self.assertEqual(before, _summaries())
      self.assertLen(
          self._get_summary_ops(summary), want_summary_fn_count
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import functools
  import os
  from absl.testing import parameterized
  from adanet import tf_compat
  from adanet.core import testing_utils
  from adanet.core.summary import _ScopedSummary
  from adanet.core.summary import _TPUScopedSummary
  from adanet.core.summary import monkey_patched_summaries
  from six.moves import range
  import tensorflow.compat.v1
  from tensorflow.python.ops import summary_ops_v2
label_desc: Use image node_id 2 for calling the MonkeyPatchTest obj's underlying member method code with example usage: obj.test_monkey_patched_summaries_args(summary_maker) without return types