code: def test_fftn_multiple_plan_error(self, dtype):
      import cupy
      import cupyx.scipy.fftpack as fftpack
  
      x = testing.shaped_random(self.shape, cupy, dtype)
      # hack: avoid testing the cases when getting a cuFFT plan is impossible
      if _default_fft_func(x, s=self.s, axes=self.axes) is not _fftn:
          return
      plan = fftpack.get_fft_plan(x, shape=self.s, axes=self.axes)
      with pytest.raises(RuntimeError) as ex, plan:
          fftpack.fftn(x, shape=self.s, axes=self.axes, plan=plan)
      assert "Use the cuFFT plan either as" in str(ex.value)
  
imports: import unittest
  import numpy
  import pytest
  import cupy
  from cupy import testing
  import cupyx.scipy.fftpack
  from cupy.fft._fft import _default_fft_func, _fftn
label_desc: Use image node_id 11 for calling the TestFftn obj's underlying member method code with example usage: obj.test_fftn_multiple_plan_error(dtype) without return types