code: def test_expm1():
      # Eval
      assert expm1(0) == 0
  
      x = Symbol("x", real=True)
  
      # Expand and rewrite
      assert expm1(x).expand(func=True) - exp(x) == -1
      assert expm1(x).rewrite("tractable") - exp(x) == -1
      assert expm1(x).rewrite("exp") - exp(x) == -1
  
      # Precision
      assert (
          not ((exp(1e-10).evalf() - 1) - 1e-10 - 5e-21) < 1e-22
      )  # for comparison
      assert abs(expm1(1e-10).evalf() - 1e-10 - 5e-21) < 1e-22
  
      # Properties
      assert expm1(x).is_real
      assert expm1(x).is_finite
  
      # Diff
      assert expm1(42 * x).diff(x) - 42 * exp(42 * x) == 0
      assert (
          expm1(42 * x).diff(x)
          - expm1(42 * x).expand(func=True).diff(x)
          == 0
      )
  
file_path: sympy/sympy/codegen/tests/test_cfunctions.py
imports: from sympy.core.numbers import Rational, pi
  from sympy.core.singleton import S
  from sympy.core.symbol import Symbol, symbols
  from sympy.functions.elementary.exponential import exp, log
  from sympy.codegen.cfunctions import expm1, log1p, exp2, log2, fma, log10, Sqrt, Cbrt, hypot
  from sympy.core.function import expand_log
label_desc: Use image node_id 1 for calling a global function with example usage: test_expm1() without return types