code: def test_fdr(fdr_params):
      q_val, p_vals = fdr_params
      if p_vals["is_below"] and p_vals["p_val"].max() == 0:
          p_val = p_vals["p_val"] + q_val - 1e-5
      elif not p_vals["is_below"] and p_vals["p_val"].max() == 0:
          p_val = p_vals["p_val"] + q_val
      else:
          p_val = p_vals["p_val"].copy()
      below_threshold, thresholds = fdr(p_val, q_val)
      assert below_threshold == p_vals["is_below"]
      assert isinstance(thresholds, (np.ndarray, float))
  
file_path: alibi-detect/alibi_detect/utils/tests/test_statstest.py
imports: from itertools import product
  import numpy
  import pytest
  import tensorflow
  from alibi_detect.utils.tensorflow import GaussianRBF, mmd2
  from alibi_detect.utils.statstest import fdr, permutation_test
label_desc: Use image node_id 2 for calling a global function with example usage: test_fdr(fdr_params) without return types