code: def testUnknownBatchSize(self):
      x = tf.TensorSpec([None, 4], dtype=tf.float32)
  
      l = linear.Linear(3)
      defun_linear = tf.function(l)
  
      defun_linear.get_concrete_function(x)
  
      out = defun_linear(tf.ones([2, 4]))
      expected_out = l(tf.ones([2, 4]))
      self.assertEqual(out.shape, [2, 3])
      self.assertAllEqual(
          self.evaluate(expected_out), self.evaluate(out)
      )
  
      out = defun_linear(tf.ones([4, 4]))
      self.assertEqual(out.shape, [4, 3])
  
imports: from absl.testing import parameterized
  import numpy
  from sonnet.src import linear
  from sonnet.src import test_utils
  import tensorflow
label_desc: Use image node_id 11 for calling the LinearTest obj's underlying member method code with example usage: obj.testUnknownBatchSize() without return types