code: def run_check_by_name(self, name, smoothness=0, **kwargs):
      a = 0.5
      b = sqrt(3)
      xtol = 4 * np.finfo(float).eps
      rtol = 4 * np.finfo(float).eps
      for function, fname in zip(tstutils_functions, tstutils_fstrings):
          if smoothness > 0 and fname in ["f4", "f5", "f6"]:
              continue
          r = root_scalar(
              function,
              method=name,
              bracket=[a, b],
              x0=a,
              xtol=xtol,
              rtol=rtol,
              **kwargs,
          )
          zero = r.root
          assert_(r.converged)
          assert_allclose(
              zero,
              1.0,
              atol=xtol,
              rtol=rtol,
              err_msg="method %s, function %s" % (name, fname),
          )
  
imports: import pytest
  from math import sqrt, exp, sin, cos
  from functools import lru_cache
  from numpy.testing import assert_warns, assert_, assert_allclose, assert_equal, assert_array_equal, suppress_warnings
  import numpy
  from numpy import finfo, power, nan, isclose
  from scipy.optimize import zeros, newton, root_scalar
  from scipy._lib._util import getfullargspec_no_self
  from scipy.optimize._tstutils import get_tests, functions, fstrings
label_desc: Use image node_id 1 for calling the TestBasic obj's underlying member method code with example usage: obj.run_check_by_name(name, smoothness) without return types