code: def _VerifyFftMethod(
      self,
      inner_dims,
      complex_to_input,
      input_to_expected,
      tf_method,
      atol=ATOL,
      rtol=RTOL,
  ):
      for indims in inner_dims:
          print("nfft =", indims)
          shape = BATCH_DIMS + indims
          data = np.arange(np.prod(shape) * 2) / np.prod(indims)
          np.random.seed(123)
          np.random.shuffle(data)
          data = np.reshape(
              data.astype(np.float32).view(np.complex64), shape
          )
          data = to_32bit(complex_to_input(data))
          expected = to_32bit(input_to_expected(data))
          with self.session() as sess:
              with self.test_scope():
                  ph = array_ops.placeholder(
                      dtypes.as_dtype(data.dtype), shape=data.shape
                  )
                  out = tf_method(ph)
              value = sess.run(out, {ph: data})
              self.assertAllClose(expected, value, rtol=rtol, atol=atol)
  
imports: import itertools
  import numpy
  import scipy.signal
  from tensorflow.compiler.tests import xla_test
  from tensorflow.python.framework import dtypes
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gradients_impl
  from tensorflow.python.ops.signal import signal
  from tensorflow.python.platform import googletest
label_desc: Use image node_id 1 for calling the FFTTest obj's underlying member method code with example usage: obj._VerifyFftMethod(inner_dims, complex_to_input, input_to_expected, tf_method, atol, rtol) without return types