code: def test_empty_like_contiguity3(self, xp, dtype, order):
      a = testing.shaped_arange((2, 3, 4), xp, dtype)
      # test strides that are both non-contiguous and non-descending
      a = a[:, ::2, :].swapaxes(0, 1)
      b = xp.empty_like(a, order=order)
      b.fill(0)
      if order in ["k", "K", None]:
          assert not b.flags.c_contiguous
          assert not b.flags.f_contiguous
      elif order in ["f", "F"]:
          assert not b.flags.c_contiguous
          assert b.flags.f_contiguous
      else:
          assert b.flags.c_contiguous
          assert not b.flags.f_contiguous
      return b
  
imports: import numpy
  import pytest
  import warnings
  import cupy
  from cupy import testing
label_desc: Use image node_id 12 for calling the TestBasic obj's underlying member method code with example usage: obj.test_empty_like_contiguity3(xp, dtype, order) and returns: b