code: def test_rational():
      a = Rational(1, 5)
  
      r = sqrt(5) / 5
      assert sqrt(a) == r
      assert 2 * sqrt(a) == 2 * r
  
      r = a * a**S.Half
      assert a ** Rational(3, 2) == r
      assert 2 * a ** Rational(3, 2) == 2 * r
  
      r = a**5 * a ** Rational(2, 3)
      assert a ** Rational(17, 3) == r
      assert 2 * a ** Rational(17, 3) == 2 * r
  
imports: from sympy.core import Basic, Rational, Symbol, S, Float, Integer, Mul, Number, Pow, Expr, I, nan, pi, symbols, oo, zoo, N
  from sympy.core.parameters import global_parameters
  from sympy.core.tests.test_evalf import NS
  from sympy.core.function import expand_multinomial
  from sympy.functions.elementary.miscellaneous import sqrt, cbrt
  from sympy.functions.elementary.exponential import exp, log
  from sympy.functions.special.error_functions import erf
  from sympy.functions.elementary.trigonometric import sin, cos, tan, sec, csc, atan
  from sympy.functions.elementary.hyperbolic import cosh, sinh, tanh
  from sympy.polys import Poly
  from sympy.series.order import O
  from sympy.sets import FiniteSet
  from sympy.core.power import power
  from sympy.core.intfunc import integer_nthroot
  from sympy.testing.pytest import warns, _both_exp_pow
  from sympy.utilities.exceptions import SymPyDeprecationWarning
  from sympy.abc import a, b, c, x, y
label_desc: Use image node_id 1 for calling a global function with example usage: test_rational() without return types