code: def test_order_ndim(
      self, size, order, axis, in_dtype, const_dtype, xp, scp
  ):
      out_dtype = xp.result_type(in_dtype, const_dtype)
      if xp.dtype(out_dtype).kind in {"i", "u"}:
          pytest.skip()
  
      x_scale = 0.5 if xp.dtype(in_dtype).kind not in {"i", "u"} else 1
      c_scale = (
          0.2 if xp.dtype(const_dtype).kind not in {"i", "u"} else 1
      )
  
      x = testing.shaped_random(
          (4, 5, 3, size), xp, in_dtype, scale=x_scale
      )
      a = testing.shaped_random(
          (order,), xp, dtype=const_dtype, scale=c_scale
      )
      a = xp.r_[1, a]
      a = a.astype(const_dtype)
  
      if xp is cupy:
          const_dtype = xp.dtype(const_dtype)
          if const_dtype.kind == "u":
              const_dtype = xp.dtype(const_dtype.char.lower())
              a = a.astype(const_dtype)
          res = apply_iir(x, -a[1:], axis, dtype=out_dtype, block_sz=32)
      else:
          res = scp.signal.lfilter(
              xp.ones(1, dtype=const_dtype), a, x, axis=axis
          )
      res = xp.nan_to_num(res, nan=xp.nan, posinf=xp.nan, neginf=xp.nan)
      return res
  
file_path: cupy/tests/cupyx_tests/scipy_tests/signal_tests/test_iir_utils.py
imports: import pytest
  import cupy
  from cupy.cuda import driver
  from cupy.cuda import runtime
  from cupy import testing
  from cupyx.scipy.signal._iir_utils import apply_iir, apply_iir_sos
label_desc: Use image node_id 2 for calling the TestIIRUtils obj's underlying member method code with example usage: obj.test_order_ndim(size, order, axis, in_dtype, const_dtype, xp, scp) and returns: res