code: def testAddOp(self):
      if context.num_gpus() < 1:
          self.skipTest("A GPU is not available for this test.")
      mirrored_val = _make_mirrored_val(init_val=3.0)
  
      self.assertEqual(
          self.evaluate(constant_op.constant(6.0)),
          self.evaluate(mirrored_val + mirrored_val),
      )
      self.assertEqual(
          self.evaluate(constant_op.constant(4.0)),
          self.evaluate(mirrored_val + 1),
      )
      self.assertEqual(
          self.evaluate(mirrored_val + 1),
          self.evaluate(math_ops.add(mirrored_val, 1)),
      )
      self.assertEqual(
          type(mirrored_val + 1), type(math_ops.add(mirrored_val, 1))
      )
  
imports: import os
  from absl.testing import parameterized
  from tensorflow.core.protobuf import config_pb2
  from tensorflow.python.distribute import combinations
  from tensorflow.python.distribute import strategy_combinations
  from tensorflow.python.distribute import strategy_test_lib
  from tensorflow.python.distribute import test_util
  from tensorflow.python.distribute import tpu_values
  from tensorflow.python.distribute import values
  from tensorflow.python.eager import context
  from tensorflow.python.eager import test
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import variable_scope
  from tensorflow.python.training import saver
label_desc: Use image node_id 1 for calling the MirroredTest obj's underlying member method code with example usage: obj.testAddOp() without return types