code: def test_ptp_nan(self, xp, dtype):
      if _acc.ACCELERATOR_CUTENSOR in _acc.get_routine_accelerators():
          pytest.skip()
      a = xp.array([float("nan"), 1, -1], dtype)
      return xp.ptp(a)
  
imports: import warnings
  import numpy
  import pytest
  import cupy
  import cupy._core._accelerator
  from cupy import cuda
  from cupy import testing
label_desc: Use image node_id 20 for calling the TestOrder obj's underlying member method code with example usage: obj.test_ptp_nan(xp, dtype) and returns: xp