code: def test_jax_eigh(
      *,
      dtype_and_x,
      lower,
      symmetrize_input,
      on_device,
      fn_tree,
      frontend,
      test_flags,
      backend_fw,
  ):
      dtype, x = dtype_and_x
      x = np.array(x[0], dtype=dtype[0])
      # make symmetric positive-definite beforehand
      x = np.matmul(x.T, x) + np.identity(x.shape[0]) * 1e-3
  
      ret, frontend_ret = helpers.test_frontend_function(
          input_dtypes=dtype,
          backend_to_test=backend_fw,
          frontend=frontend,
          test_flags=test_flags,
          fn_tree=fn_tree,
          on_device=on_device,
          test_values=False,
          x=x,
          lower=lower,
          symmetrize_input=symmetrize_input,
      )
      with BackendHandler.update_backend(backend_fw) as ivy_backend:
          ret = [ivy_backend.to_numpy(x) for x in ret]
      frontend_ret = [np.asarray(x) for x in frontend_ret]
  
      L, Q = ret
      frontend_Q, frontend_L = frontend_ret
  
      assert_all_close(
          ret_np=Q @ np.diag(L) @ Q.T,
          ret_from_gt_np=frontend_Q
          @ np.diag(frontend_L)
          @ frontend_Q.T,
          atol=1e-2,
          backend=backend_fw,
          ground_truth_backend=frontend,
      )
  
file_path: ivy/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_linalg.py
imports: import sys
  import numpy
  from hypothesis import strategies
  import ivy_tests.test_ivy.helpers
  from ivy_tests.test_ivy.helpers import assert_all_close
  from ivy_tests.test_ivy.helpers import handle_frontend_test, BackendHandler
label_desc: Use image node_id 2 for calling a global function with example usage: test_jax_eigh() without return types