code: def test_conv_output_shape_when_input_unknown(self):
      block = layers.join(
          layers.Convolution((3, 3, 32)),
          layers.Relu(),
          layers.BatchNorm(),
      )
      self.assertShapesEqual(block.input_shape, None)
      self.assertShapesEqual(block.output_shape, (None, None, None, 32))
  
imports: import random
  from itertools import product
  from collections import namedtuple
  import numpy
  import tensorflow
  from neupy import layers
  from neupy.utils import asfloat, shape_to_tuple
  from neupy.layers.convolutions import conv_output_shape, deconv_output_shape
  from neupy.exceptions import LayerConnectionError
  from base import BaseTestCase
label_desc: Use image node_id 19 for calling the ConvLayersTestCase obj's underlying member method code with example usage: obj.test_conv_output_shape_when_input_unknown() without return types