code: def testToFromComponents(self, shape, fields, field_specs):
      struct = StructuredTensor.from_fields(fields, shape)
      spec = StructuredTensor.Spec(
          _ragged_shape=DynamicRaggedShape.Spec(
              row_partitions=[],
              static_inner_shape=shape,
              dtype=dtypes.int64,
          ),
          _fields=field_specs,
      )
      actual_components = spec._to_components(struct)
      rt_reconstructed = spec._from_components(actual_components)
      self.assertAllEqual(struct, rt_reconstructed)
  
imports: from absl.testing import parameterized
  import numpy
  from tensorflow.python.data.ops import dataset_ops
  from tensorflow.python.eager import context
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import tensor_shape
  from tensorflow.python.framework import tensor_spec
  from tensorflow.python.framework import test_util
  from tensorflow.python.framework import type_spec
  from tensorflow.python.ops.ragged import ragged_factory_ops
  from tensorflow.python.ops.ragged import ragged_tensor
  from tensorflow.python.ops.ragged import row_partition
  from tensorflow.python.ops.ragged.dynamic_ragged_shape import DynamicRaggedShape
  from tensorflow.python.ops.structured import structured_tensor
  from tensorflow.python.ops.structured.structured_tensor import StructuredTensor
  from tensorflow.python.platform import googletest
label_desc: Use image node_id 6 for calling the StructuredTensorSpecTest obj's underlying member method code with example usage: obj.testToFromComponents(shape, fields, field_specs) without return types