code: def testNestZeroWithOuterDimsTensor(self, dtype):
      if dtype == tf.string:
          self.skipTest("Not compatible with string type.")
      nested_spec = example_nested_tensor_spec(dtype)
      zeros = tensor_spec.zero_spec_nest(
          nested_spec, outer_dims=[tf.constant(8, dtype=tf.int32)]
      )
      zeros_ = self.evaluate(zeros)
  
      def check_shape_and_zero(spec, value):
          self.assertEqual([8] + spec.shape, value.shape)
          self.assertTrue(np.all(value == 0))
  
      tf.nest.map_structure(check_shape_and_zero, nested_spec, zeros_)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from absl.testing import parameterized
  import numpy
  import tensorflow
  from tf_agents.specs import array_spec
  from tf_agents.specs import tensor_spec
  from tf_agents.trajectories import time_step
label_desc: Use image node_id 3 for calling the TensorSpecZeroTest obj's underlying member method code with example usage: obj.testNestZeroWithOuterDimsTensor(dtype) without return types