code: def testPreserve(self, preserve):
      shape = list(preserve) + [13, 84, 3, 2]
      output_shape = [13, 21, 3, 8]
      preserve_dims = len(preserve)
      input_spec = tf.TensorSpec(shape, tf.float32)
      mod = reshape.Reshape(
          output_shape=output_shape, preserve_dims=preserve_dims
      )
      cf = tf.function(mod).get_concrete_function(input_spec)
      (output,) = cf.outputs
      self.assertEqual(
          output.shape.as_list(), list(preserve) + output_shape
      )
  
imports: from absl.testing import parameterized
  import numpy
  from sonnet.src import reshape
  from sonnet.src import test_utils
  import tensorflow
label_desc: Use image node_id 14 for calling the ReshapeTest obj's underlying member method code with example usage: obj.testPreserve(preserve) without return types