code: def testFromValue(self):
      tensor_values = constant_op.constant([[1.0, 2], [4, 5], [7, 8]])
      values = WrappedTensor(tensor_values)
  
      row_splits = constant_op.constant([0, 2, 3, 3, 3], dtypes.int32)
      rt = RaggedTensor.from_row_splits(values, row_splits)
  
      rt_spec = type_spec.type_spec_from_value(rt)
      self.assertEqual(
          rt_spec,
          RaggedTensorSpec(
              shape=[4, None, 2],
              dtype=dtypes.float32,
              ragged_rank=1,
              row_splits_dtype=dtypes.int32,
              flat_values_spec=WrappedTensor.Spec(
                  tensor.TensorSpec([None, 2], dtypes.float32)
              ),
          ),
      )
      # Ensure the shape of flat_values_spec being consistent with the shape
      # of the RaggedTensor.
      self.assertEqual(
          rt_spec.shape[rt_spec.ragged_rank :],
          rt_spec.flat_values_spec.shape,
      )
  
imports: from absl.testing import parameterized
  from tensorflow.python.eager import context
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import extension_type
  from tensorflow.python.framework import tensor
  from tensorflow.python.framework import tensor_shape
  from tensorflow.python.framework import test_util
  from tensorflow.python.framework import type_spec
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import check_ops
  from tensorflow.python.ops import clip_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import nn_ops
  from tensorflow.python.ops import string_ops
  from tensorflow.python.ops.ragged import ragged_factory_ops
  from tensorflow.python.ops.ragged import ragged_tensor
  from tensorflow.python.ops.ragged import ragged_tensor_test_ops
  from tensorflow.python.ops.ragged.ragged_tensor import RaggedTensor
  from tensorflow.python.ops.ragged.ragged_tensor import RaggedTensorSpec
  from tensorflow.python.platform import googletest
  from tensorflow.python.util import dispatch
label_desc: Use image node_id 8 for calling the RaggedTensorSpecSupportedValuesTest obj's underlying member method code with example usage: obj.testFromValue() without return types