From c2b7069807d91c4333ebde3c0f4355b2f3840458 Mon Sep 17 00:00:00 2001
From: Andreas Kloeckner <inform@tiker.net>
Date: Wed, 29 Aug 2012 03:24:43 -0400
Subject: [PATCH] Skip maxima tests if there's no pexpect.

---
 test/test_maxima.py | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/test/test_maxima.py b/test/test_maxima.py
index 14ef77f..75ae233 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"))
-- 
GitLab