code: def test_round_halfway_int(self, xp, dtype):
      # generate [..., -1.5, -0.5, 0.5, 1.5, ...] * 10^{-decimals}
      a = testing.shaped_arange(self.shape, xp, dtype=dtype)
      a *= 2
      a -= a.size + 1
      scale = 10 ** abs(self.decimals)
      if self.decimals < 0:
          a *= xp.array(scale).astype(dtype)
      a >>= 1
  
      return a.round(self.decimals)
  
file_path: cupy/tests/cupy_tests/core_tests/test_ndarray_math.py
imports: import unittest
  import numpy
  from cupy import testing
label_desc: Use image node_id 2 for calling the TestRoundHalfway obj's underlying member method code with example usage: obj.test_round_halfway_int(xp, dtype) and returns: a