code: def testOutOfBoundsError(self):
      tensor_params = ["a", "b", "c"]
      tensor_indices = [0, 1, 2]
      ragged_params = ragged_factory_ops.constant([["a", "b"], ["c"]])
      ragged_indices = ragged_factory_ops.constant([[0, 3]])
      with self.assertRaisesRegex(
          errors.InvalidArgumentError,
          r"indices\[1\] = 3 is not in \[0, 3\)",
      ):
          self.evaluate(
              ragged_gather_ops.gather(tensor_params, ragged_indices)
          )
      with self.assertRaisesRegex(
          errors.InvalidArgumentError,
          r"indices\[2\] = 2 is not in \[0, 2\)",
      ):
          self.evaluate(
              ragged_gather_ops.gather(ragged_params, tensor_indices)
          )
      with self.assertRaisesRegex(
          errors.InvalidArgumentError,
          r"indices\[1\] = 3 is not in \[0, 2\)",
      ):
          self.evaluate(
              ragged_gather_ops.gather(ragged_params, ragged_indices)
          )
  
imports: from absl.testing import parameterized
  import numpy
  from tensorflow.python.eager import context
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors
  from tensorflow.python.framework import indexed_slices
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gradients_impl
  from tensorflow.python.ops.ragged import ragged_factory_ops
  from tensorflow.python.ops.ragged import ragged_gather_ops
  from tensorflow.python.ops.ragged import ragged_tensor
  from tensorflow.python.platform import googletest
label_desc: Use image node_id 3 for calling the RaggedGatherOpTest obj's underlying member method code with example usage: obj.testOutOfBoundsError() without return types