code: def test_solvefun():
      f, F, G, H = map(Function, ["f", "F", "G", "H"])
      eq1 = f(x, y) + f(x, y).diff(x) + f(x, y).diff(y)
      assert pdsolve(eq1) == Eq(f(x, y), F(x - y) * exp(-x / 2 - y / 2))
      assert pdsolve(eq1, solvefun=G) == Eq(
          f(x, y), G(x - y) * exp(-x / 2 - y / 2)
      )
      assert pdsolve(eq1, solvefun=H) == Eq(
          f(x, y), H(x - y) * exp(-x / 2 - y / 2)
      )
  
file_path: sympy/sympy/solvers/tests/test_pde.py
imports: from sympy.core.function import Derivative, Function
  from sympy.core.relational import Eq
  from sympy.core.symbol import Symbol, symbols
  from sympy.functions.elementary.exponential import exp, log
  from sympy.functions.elementary.trigonometric import cos, sin
  from sympy.core import S
  from sympy.solvers.pde import pde_separate, pde_separate_add, pde_separate_mul, pdsolve, classify_pde, checkpdesol
  from sympy.testing.pytest import raises
label_desc: Use image node_id 7 for calling a global function with example usage: test_solvefun() without return types