code: def test_ff_example():
      """ """
  
      problem = {
          "bounds": np.repeat([-1, 1], 12).reshape(2, 12).T,
          "num_vars": 12,
          "names": ["x" + str(x + 1) for x in range(12)],
      }
  
      X = sample(problem)
      Y = X[:, 0] + 2 * X[:, 1] + 3 * X[:, 2] + 4 * X[:, 6] * X[:, 11]
  
      expected = np.array(
          [
              10,
              -2,
              4,
              -8,
              2,
              6,
              -4,
              0,
              2,
              6,
              -4,
              0,
              10,
              -2,
              4,
              -8,
              -2,
              -6,
              4,
              0,
              -10,
              2,
              -4,
              8,
              -10,
              2,
              -4,
              8,
              -2,
              -6,
              4,
              0,
          ]
      )
  
      assert_equal(Y, expected)
  
      Si = analyze(problem, X, Y)
  
      expected = np.array(
          [1, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], dtype=float
      )
      assert_equal(expected, Si["ME"])
  
file_path: SALib/tests/test_ff.py
imports: import numpy
  from numpy.testing import assert_equal, assert_allclose
  from SALib.sample.ff import sample, find_smallest, extend_bounds
  from SALib.analyze.ff import analyze, interactions
label_desc: Use image node_id 6 for calling a global function with example usage: test_ff_example() without return types