code: def test_issue_12791():
      beta = symbols("beta", positive=True)
      theta, varphi = symbols("theta varphi", real=True)
  
      expr = (
          -(beta**2) * varphi * sin(theta)
          + beta**2 * cos(theta)
          + beta * varphi * sin(theta)
          - beta * cos(theta)
          - beta
          + 1
      ) / (beta * cos(theta) - 1) ** 2
  
      sol = (
          0.5 / (0.5 * cos(theta) - 1.0) ** 2
          - 0.25 * cos(theta) / (0.5 * cos(theta) - 1.0) ** 2
          + (beta - 0.5)
          * (
              -0.25 * varphi * sin(2 * theta)
              - 1.5 * cos(theta)
              + 0.25 * cos(2 * theta)
              + 1.25
          )
          / ((0.5 * cos(theta) - 1.0) ** 2 * (0.5 * cos(theta) - 1.0))
          + 0.25 * varphi * sin(theta) / (0.5 * cos(theta) - 1.0) ** 2
          + O((beta - S.Half) ** 2, (beta, S.Half))
      )
  
      assert expr.series(beta, 0.5, 2).trigsimp() == sol
  
imports: from sympy.core.evalf import N
  from sympy.core.function import Derivative, Function, PoleError, Subs
  from sympy.core.numbers import E, Float, Rational, oo, pi, I
  from sympy.core.singleton import S
  from sympy.core.symbol import Symbol, symbols
  from sympy.functions.elementary.exponential import LambertW, exp, log
  from sympy.functions.elementary.miscellaneous import sqrt
  from sympy.functions.elementary.trigonometric import atan, cos, sin
  from sympy.functions.special.gamma_functions import gamma
  from sympy.integrals.integrals import Integral, integrate
  from sympy.series.order import O
  from sympy.series.series import series
  from sympy.abc import x, y, n, k
  from sympy.testing.pytest import raises
  from sympy.core import EulerGamma
  from sympy.series.acceleration import richardson, shanks
  from sympy.concrete.summations import Sum
  from sympy.core.numbers import Integer
label_desc: Use image node_id 21 for calling a global function with example usage: test_issue_12791() without return types