code: def get_test_name(param):
      if isinstance(param, str):
          return f'"{param}" '  # op_name
      if isinstance(param, dict):
          elements = []
          for args_names, args_cfgs in param.items():
              if isinstance(args_cfgs, tuple):
                  binded_args = args_names.split(",")
                  for arg_name, arg_val in zip(binded_args, args_cfgs):
                      elements.append(
                          f'"{arg_name}": {get_param_name(arg_val)}'
                      )
              else:
                  arg_name, arg_val = args_names, args_cfgs
                  elements.append(
                      f'"{arg_name}": {get_param_name(arg_val)}'
                  )
          return " " + ", ".join(elements)
      raise TypeError(
          "Op configuration should only consist of its name (str) and arg config (dict)"
      )
  
file_path: mxnet/tests/python/dnnl/test_amp.py
imports: import sys
  from pathlib import Path
  import pytest
  import mxnet
  import amp.common
  from mxnet.test_utils import assert_almost_equal
  from mxnet.amp.lists.symbol_bf16 import BF16_FUNCS, BF16_FP32_FUNCS, WIDEST_TYPE_CASTS, CONDITIONAL_FP32_FUNCS
  from op_cfg import get_op_cfg_generator, get_symblock_from_args_scenario, CFG_RTOL_ATOL
label_desc: Use image node_id 8 for calling a global function with example usage: get_test_name(param) and returns: str, param, str, unknown