code: def testComputationPaddingValid(self, with_bias):
      expected_out = [[9, 9, 9], [9, 9, 9], [9, 9, 9]]
      conv1 = conv.Conv2D(
          output_channels=1,
          kernel_shape=3,
          stride=1,
          padding="VALID",
          with_bias=with_bias,
          **create_constant_initializers(1.0, 1.0, with_bias),
      )
  
      out = conv1(tf.ones([1, 5, 5, 1], dtype=tf.float32))
      self.assertEqual(out.shape, [1, 3, 3, 1])
      out = tf.squeeze(out, axis=(0, 3))
  
      expected_out = np.asarray(expected_out, dtype=np.float32)
      if with_bias:
          expected_out += 1
  
      self.assertAllClose(self.evaluate(out), expected_out)
  
imports: from absl.testing import parameterized
  import numpy
  from sonnet.src import conv
  from sonnet.src import initializers
  from sonnet.src import test_utils
  import tensorflow
label_desc: Use image node_id 2 for calling the Conv2DTest obj's underlying member method code with example usage: obj.testComputationPaddingValid(with_bias) without return types