code: def test_transform_homogeneous_shapes(self, do_batched):
      num_vertices = 10
      batch_size = 3
      num_channels = 3
      vertices_shape = (
          [batch_size, num_vertices, num_channels]
          if do_batched
          else [num_vertices, num_channels]
      )
      vertices = tf.ones(vertices_shape, dtype=tf.float32)
      matrices = tf.eye(4, dtype=tf.float32)
      if do_batched:
          matrices = tf.tile(
              matrices[tf.newaxis, ...], [batch_size, 1, 1]
          )
  
      transformed = utils.transform_homogeneous(matrices, vertices)
  
      expected_shape = (
          [batch_size, num_vertices, 4]
          if do_batched
          else [num_vertices, 4]
      )
      self.assertEqual(transformed.shape, expected_shape)
  
imports: from absl.testing import parameterized
  import tensorflow
  from tensorflow_graphics.rendering import utils
  from tensorflow_graphics.util import test_case
label_desc: Use image node_id 1 for calling the UtilsTest obj's underlying member method code with example usage: obj.test_transform_homogeneous_shapes(do_batched) without return types