code: def test_rischDE():
      # TODO: Add more tests for rischDE, including ones from the text
      DE = DifferentialExtension(
          extension={"D": [Poly(1, x), Poly(t, t)]}
      )
      DE.decrement_level()
      assert rischDE(
          Poly(-2 * x, x),
          Poly(1, x),
          Poly(1 - 2 * x - 2 * x**2, x),
          Poly(1, x),
          DE,
      ) == (Poly(x + 1, x), Poly(1, x))
  
file_path: sympy/sympy/integrals/tests/test_rde.py
imports: from sympy.core.numbers import I, Rational, oo
  from sympy.core.symbol import symbols
  from sympy.polys.polytools import Poly
  from sympy.integrals.risch import DifferentialExtension, NonElementaryIntegralException
  from sympy.integrals.rde import order_at, order_at_oo, weak_normalizer, normal_denom, special_denom, bound_degree, spde, solve_poly_rde, no_cancel_equal, cancel_primitive, cancel_exp, rischDE
  from sympy.testing.pytest import raises
  from sympy.abc import x, t, z, n
label_desc: Use image node_id 10 for calling a global function with example usage: test_rischDE() without return types