code: def simple_test_two_function(
      *,
      fn_name: str,
      x,
      frontend: str,
      fn_str: str,
      dtype_data: str,
      rtol_: Optional[float] = None,
      atol_: float = 1e-06,
      ivy_submodules: list = [],
      framework_submodules: list = [],
  ):
      ivy.set_backend(frontend)
      fn_ivy = ivy.functional.frontends.__dict__[frontend]
      for ivy_submodule in ivy_submodules:
          fn_ivy = fn_ivy.__dict__[ivy_submodule]
      fn_ivy = fn_ivy.__dict__[fn_str]
  
      fn_framework = tf
      for framework_submodule in framework_submodules:
          fn_framework = fn_framework.__dict__[framework_submodule]
      fn_framework = fn_framework.__dict__[fn_str]
      x = ivy.array(x).to_native()
  
      ret_ivy = fn_ivy(fn_name)(x)
      ret = fn_framework(fn_name)(x)
  
      ret_ivy = ivy.array(ret_ivy, dtype=dtype_data)
      ret = ivy.array(ret, dtype=dtype_data)
  
      ret_np_flat = helpers.flatten_and_to_np(ret=ret)
      frontend_ret_np_flat = helpers.flatten_and_to_np(ret=ret_ivy)
  
      helpers.value_test(
          ret_np_flat=ret_np_flat,
          ret_np_from_gt_flat=frontend_ret_np_flat,
          rtol=rtol_,
          atol=atol_,
          ground_truth_backend=frontend,
      )
      ivy.previous_backend()
  
imports: from hypothesis import strategies
  from types import SimpleNamespace
  import sys
  import ivy
  import ivy_tests.test_ivy.helpers
  from ivy_tests.test_ivy.helpers import handle_frontend_test
  from typing import Optional
label_desc: Use image node_id 2 for calling a global function with example usage: simple_test_two_function() without return types