code: def testDebugNumericSummaryV2OpReduceInfNanThreeSlots(self):
      def debug_summary(x):
          return self.evaluate(
              gen_debug_ops.debug_numeric_summary_v2(
                  x,
                  tensor_debug_mode=(
                      debug_event_pb2.TensorDebugMode.REDUCE_INF_NAN_THREE_SLOTS
                  ),
              )
          )
  
      self.assertAllEqual(
          debug_summary(constant_op.constant([])), [0.0, 0.0, 0.0]
      )
      self.assertAllEqual(
          debug_summary(constant_op.constant(42.0)), [0.0, 0.0, 0.0]
      )
      self.assertAllEqual(
          debug_summary(constant_op.constant([3.0, 4.0])),
          [0.0, 0.0, 0.0],
      )
      self.assertAllEqual(
          debug_summary(constant_op.constant(np.array([3.0, -np.inf]))),
          [-np.inf, 0.0, 0.0],
      )
      self.assertAllEqual(
          debug_summary(
              constant_op.constant(np.array([[0, 0], [np.nan, 0]]))
          ),
          [0.0, 0.0, np.nan],
      )
      self.assertAllEqual(
          debug_summary(
              constant_op.constant(np.array([[0, 0], [np.nan, np.inf]]))
          ),
          [0.0, np.inf, np.nan],
      )
      self.assertAllEqual(
          debug_summary(
              constant_op.constant(
                  np.array([[0, np.inf], [np.nan, -np.inf]])
              )
          ),
          [-np.inf, np.inf, np.nan],
      )
  
      x = np.zeros([100, 100], dtype=np.float16)
      x[32, 47] = np.nan
      self.assertAllEqual(
          debug_summary(constant_op.constant(x)), [0.0, 0.0, np.nan]
      )
      x = np.zeros([97, 97], dtype=np.float32)
      x[50, 83] = -np.inf
      self.assertAllEqual(
          debug_summary(constant_op.constant(x)), [-np.inf, 0.0, 0.0]
      )
      x[1, 41] = np.nan
      self.assertAllEqual(
          debug_summary(constant_op.constant(x)), [-np.inf, 0.0, np.nan]
      )
      x = np.zeros([9701], dtype=np.float64)
      x[9700] = np.nan
      self.assertAllEqual(
          debug_summary(constant_op.constant(x)), [0.0, 0.0, np.nan]
      )
  
imports: import os
  import numpy
  from tensorflow.core.protobuf import debug_event_pb2
  from tensorflow.python.debug.lib import debug_events_reader
  from tensorflow.python.debug.lib import debug_events_writer
  from tensorflow.python.debug.lib import dumping_callback_test_lib
  from tensorflow.python.eager import def_function
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors
  from tensorflow.python.framework import errors_impl
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import tensor_util
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gen_debug_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.platform import googletest
label_desc: Use image node_id 1 for calling the DebugNumericSummaryV2Test obj's underlying member method code with example usage: obj.testDebugNumericSummaryV2OpReduceInfNanThreeSlots() and returns: self