code: def testStaticShapeInfoPreservedInFunction(
      self, static_dense_shape, dense_shape_shape, expected_output_shape
  ):
      @def_function.function
      def func(indices, values, dense_shape):
          if static_dense_shape:
              dense_shape = [
                  static_dim or dense_shape[i]
                  for i, static_dim in enumerate(static_dense_shape)
              ]
          sp_input = sparse_tensor.SparseTensor(
              indices, values, dense_shape
          )
          sp_output = sparse_ops.sparse_reorder(sp_input)
          self.assertEqual(expected_output_shape, sp_output.get_shape())
          return sp_output
  
      _ = func.get_concrete_function(
          tensor_spec.TensorSpec([6, 2], dtypes.int64),
          tensor_spec.TensorSpec([6], dtypes.float64),
          tensor_spec.TensorSpec(dense_shape_shape, dtypes.int64),
      )
  
imports: from absl.testing import parameterized
  import numpy
  from tensorflow.python.eager import def_function
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors
  from tensorflow.python.framework import sparse_tensor
  from tensorflow.python.framework import tensor_spec
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gen_sparse_ops
  from tensorflow.python.ops import gradient_checker
  from tensorflow.python.ops import sparse_ops
  import tensorflow.python.ops.sparse_grad
  from tensorflow.python.platform import test
label_desc: Use image node_id 4 for calling the SparseReorderTest obj's underlying member method code with example usage: obj.testStaticShapeInfoPreservedInFunction(static_dense_shape, dense_shape_shape, expected_output_shape) and returns: sp_output