code: def testBuilds(self):
      observation_spec = tensor_spec.BoundedTensorSpec(
          (8, 8, 3), tf.float32, 0, 1
      )
      observation = tensor_spec.sample_spec_nest(
          observation_spec, outer_dims=(1,)
      )
  
      net = value_network.ValueNetwork(
          observation_spec,
          conv_layer_params=[(4, 2, 2)],
          fc_layer_params=(5,),
      )
  
      value, _ = net(observation)
      self.evaluate(tf.compat.v1.global_variables_initializer())
  
      self.assertEqual([1], value.shape.as_list())
  
      self.assertEqual(6, len(net.variables))
      # Conv Net Kernel
      self.assertEqual((2, 2, 3, 4), net.variables[0].shape)
      # Conv Net bias
      self.assertEqual((4,), net.variables[1].shape)
      # Fc Kernel
      self.assertEqual((64, 5), net.variables[2].shape)
      # Fc Bias
      self.assertEqual((5,), net.variables[3].shape)
      # Value Shrink Kernel
      self.assertEqual((5, 1), net.variables[4].shape)
      # Value Shrink bias
      self.assertEqual((1,), net.variables[5].shape)
  
file_path: agents/tf_agents/networks/value_network_test.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import tensorflow
  from tf_agents.networks import value_network
  from tf_agents.specs import tensor_spec
  from tensorflow.python.framework import test_util
label_desc: Use image node_id 1 for calling the ValueNetworkTest obj's underlying member method code with example usage: obj.testBuilds() without return types