code: def test_input_validation(self, inputs):
      if callable(inputs):
          inputs = inputs()
  
      with self.assertRaisesRegex(
          ValueError, "can only be built with DTensor"
      ):
          dtensor_util.DTensorDistributedValue(inputs)
  
imports: from absl.testing import parameterized
  import numpy
  from tensorflow.dtensor.python import api
  from tensorflow.dtensor.python import layout
  from tensorflow.dtensor.python.tests import test_util
  from tensorflow.python.distribute import reduce_util
  from tensorflow.python.distribute import values
  from tensorflow.python.distribute.experimental import dtensor_util
  from tensorflow.python.distribute.experimental import mirrored_strategy
  from tensorflow.python.eager import def_function
  from tensorflow.python.eager import test
  from tensorflow.python.framework import constant_op
label_desc: Use image node_id 2 for calling the DTensorDistributedValueTest obj's underlying member method code with example usage: obj.test_input_validation(inputs) without return types