code: def testCommonDtypeAcceptsNone(self):
      self.assertEqual(
          tf.float16,
          dtype_util.common_dtype([None], dtype_hint=tf.float16),
      )
  
      x = tf.ones(3, tf.float16)
      self.assertEqual(
          tf.float16,
          dtype_util.common_dtype([x, None], dtype_hint=tf.float32),
      )
  
      fake_tensor = dataclasses.make_dataclass("fake_tensor", ["dtype"])
      self.assertEqual(
          tf.float16,
          dtype_util.common_dtype(
              [fake_tensor(dtype=None), None, x], dtype_hint=tf.float32
          ),
      )
      self.assertEqual(
          tf.float32,
          dtype_util.common_dtype(
              [fake_tensor(dtype=tf.float32), None]
          ),
      )
  
imports: import dataclasses
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 3 for calling the DtypeUtilTest obj's underlying member method code with example usage: obj.testCommonDtypeAcceptsNone() without return types