code: def test_dont_cast_non_floats_func(self):
      mixed_precision.enable(tf.float32)
  
      @mixed_precision.modes([tf.float32, tf.float16])
      def fwd_func(x):
          self.assertTrue(x.dtype.is_integer)
          return x
  
      x = tf.Variable([[1, 9], [8, 9]])
      self.assertTrue(x.dtype.is_integer)
  
      mixed_precision.enable(tf.float16)
      self.assertTrue(fwd_func(x).dtype.is_integer)
      self.assertTrue(fwd_func(x).dtype.is_integer)
  
imports: from absl.testing import parameterized
  from sonnet.src import base
  from sonnet.src import mixed_precision
  from sonnet.src import test_utils
  import tensorflow
  import tree
label_desc: Use image node_id 4 for calling the MixedPrecisionTest obj's underlying member method code with example usage: obj.test_dont_cast_non_floats_func() and returns: x