code: def testNegativeAxis(self):
      self._testAll(
          np.random.randint(-100, 100, (5)).astype(np.int32), 3, -1
      )
      self._testAll(
          np.random.randint(-100, 100, (4, 4)).astype(np.int32), 3, -2
      )
      # Make sure negative axis should be 0 <= axis + dims < dims
      with self.cached_session():
          with self.assertRaisesRegex(
              errors_impl.InvalidArgumentError, "is out of range"
          ):
              manip_ops.roll(
                  np.random.randint(-100, 100, (4, 4)).astype(np.int32),
                  3,
                  -10,
              ).eval()
  
imports: import numpy
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors_impl
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gradient_checker
  from tensorflow.python.ops import manip_ops
  from tensorflow.python.platform import test
label_desc: Use image node_id 7 for calling the RollTest obj's underlying member method code with example usage: obj.testNegativeAxis() without return types