diff --git a/test/test_maxima.py b/test/test_maxima.py index 14ef77f411b820a7bf28d5ead7ae93abbc408b9e..75ae233b06c564bc3ef286e98fd12f6323b52b50 100644 --- a/test/test_maxima.py +++ b/test/test_maxima.py @@ -1,6 +1,9 @@ -from pymbolic.maxima import MaximaKernel, MaximaError +import pytest def test_kernel(): + pytest.importorskip("pexpect") + + from pymbolic.maxima import MaximaKernel knl = MaximaKernel() knl.exec_str("k:1/(sqrt((x0-(a+t*b))^2+(y0-(c+t*d))^2+(z0-(e+t*f))^2))") knl.eval_str("sum(diff(k, t,deg)*t^deg,deg,0,6)") @@ -8,16 +11,22 @@ def test_kernel(): knl.shutdown() def pytest_funcarg__knl(request): + pytest.importorskip("pexpect") + + from pymbolic.maxima import MaximaKernel knl = MaximaKernel() request.addfinalizer(knl.shutdown) return knl def test_setup(knl): + pytest.importorskip("pexpect") + knl.clean_eval_str_with_setup( ["k:1/(sqrt((x0-(a+t*b))^2+(y0-(c+t*d))^2+(z0-(e+t*f))^2))"], "sum(diff(k, t,deg)*t^deg,deg,0,6)") def test_error(knl): + from pymbolic.maxima import MaximaError try: knl.eval_str("))(!") except MaximaError: @@ -64,6 +73,8 @@ def test_lax_round_trip(knl): "ratsimp(result-result2)") == 0 def test_diff(): + pytest.importorskip("pexpect") + from pymbolic.maxima import diff from pymbolic import parse diff(parse("sqrt(x**2+y**2)"), parse("x"))