code: def test_fft_with_order(dtype, order, fft):
      # Check that FFT/IFFT produces identical results for C, Fortran and
      # non contiguous arrays
      rng = np.random.RandomState(42)
      X = rng.rand(8, 7, 13).astype(dtype, copy=False)
      # See discussion in pull/14178
      _tol = 8.0 * np.sqrt(np.log2(X.size)) * np.finfo(X.dtype).eps
      if order == "F":
          Y = np.asfortranarray(X)
      else:
          # Make a non contiguous array
          Y = X[::-1]
          X = np.ascontiguousarray(X[::-1])
  
      if fft.__name__.endswith("fft"):
          for axis in range(3):
              X_res = fft(X, axis=axis)
              Y_res = fft(Y, axis=axis)
              assert_allclose(X_res, Y_res, atol=_tol, rtol=_tol)
      elif fft.__name__.endswith(("fft2", "fftn")):
          axes = [(0, 1), (1, 2), (0, 2)]
          if fft.__name__.endswith("fftn"):
              axes.extend([(0,), (1,), (2,), None])
          for ax in axes:
              X_res = fft(X, axes=ax)
              Y_res = fft(Y, axes=ax)
              assert_allclose(X_res, Y_res, atol=_tol, rtol=_tol)
      else:
          raise ValueError()
  
imports: import numpy
  import pytest
  from numpy.random import random
  from numpy.testing import assert_array_equal, assert_raises, assert_allclose, IS_WASM
  import threading
  import queue
label_desc: Use image node_id 2 for calling a global function with example usage: test_fft_with_order(dtype, order, fft) without return types