code: def pytest_generate_tests(metafunc):
      # number of test to repeat
      test_indices = list(range(1))
  
      # test params
      test_funcs = [
          Funcs.func_basic_ops,
          Funcs.func_real,
          Funcs.func_dot,
          Funcs.func_dot_reduction_mix,
          Funcs.func_scalar_broadcast,
          Funcs.func_transpose,
      ]
      test_tensor_flags = ["pos_rand", "neg_rand", "rand"]
      test_tensor_dims = [(2, 2)]
  
      # generate params for testing
      if "custom_args" in metafunc.fixturenames:
          fargs = itertools.product(
              test_indices,
              test_funcs,
              test_tensor_flags,
              test_tensor_dims,
          )
          # parameterize test call
          metafunc.parametrize("custom_args", fargs)
  
file_path: neon/tests/test_backend_autodiff.py
imports: from builtins import zip
  import itertools
  import numpy
  from neon import NervanaObject
  from neon.backends.autodiff import Autodiff
  from utils import call_func, gen_backend_tensors, tensors_allclose
  import pytest
label_desc: Use image node_id 3 for calling a global function with example usage: pytest_generate_tests(metafunc) without return types