projects
/
linpy.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
8608f67
)
Check for SymPy presence in unittary tests
author
Vivien Maisonneuve
<v.maisonneuve@gmail.com>
Mon, 23 Jun 2014 15:42:14 +0000
(17:42 +0200)
committer
Vivien Maisonneuve
<v.maisonneuve@gmail.com>
Tue, 24 Jun 2014 08:42:13 +0000
(10:42 +0200)
tests/test_linear.py
patch
|
blob
|
history
diff --git
a/tests/test_linear.py
b/tests/test_linear.py
index
b7006a7
..
879cc17
100644
(file)
--- a/
tests/test_linear.py
+++ b/
tests/test_linear.py
@@
-1,3
+1,4
@@
+import functools
import unittest
from fractions import Fraction
import unittest
from fractions import Fraction
@@
-5,6
+6,21
@@
from fractions import Fraction
from pypol.linear import *
from pypol.linear import *
+try:
+ import sympy
+ def _with_sympy(func):
+ @functools.wraps(func)
+ def wrapper(self):
+ return func(self)
+ return wrapper
+except ImportError:
+ def _with_sympy(func):
+ @functools.wraps(func)
+ def wrapper(self):
+ raise unittest.SkipTest('SymPy is not available')
+ return wrapper
+
+
class TestExpression(unittest.TestCase):
def setUp(self):
class TestExpression(unittest.TestCase):
def setUp(self):
@@
-151,8
+167,8
@@
class TestExpression(unittest.TestCase):
self.assertEqual((self.x + self.y/2 + self.z/3)._toint(),
6*self.x + 3*self.y + 2*self.z)
self.assertEqual((self.x + self.y/2 + self.z/3)._toint(),
6*self.x + 3*self.y + 2*self.z)
+ @_with_sympy
def test_fromsympy(self):
def test_fromsympy(self):
- import sympy
sp_x, sp_y = sympy.symbols('x y')
self.assertEqual(Expression.fromsympy(sp_x), self.x)
self.assertEqual(Expression.fromsympy(sympy.Rational(22, 7)), self.pi)
sp_x, sp_y = sympy.symbols('x y')
self.assertEqual(Expression.fromsympy(sp_x), self.x)
self.assertEqual(Expression.fromsympy(sympy.Rational(22, 7)), self.pi)
@@
-160,8
+176,8
@@
class TestExpression(unittest.TestCase):
with self.assertRaises(ValueError):
Expression.fromsympy(sp_x*sp_y)
with self.assertRaises(ValueError):
Expression.fromsympy(sp_x*sp_y)
+ @_with_sympy
def test_tosympy(self):
def test_tosympy(self):
- import sympy
sp_x, sp_y = sympy.symbols('x y')
self.assertEqual(self.x.tosympy(), sp_x)
self.assertEqual(self.pi.tosympy(), sympy.Rational(22, 7))
sp_x, sp_y = sympy.symbols('x y')
self.assertEqual(self.x.tosympy(), sp_x)
self.assertEqual(self.pi.tosympy(), sympy.Rational(22, 7))
@@
-175,8
+191,8
@@
class TestConstant(unittest.TestCase):
self.one = Constant(1)
self.pi = Constant(Fraction(22, 7))
self.one = Constant(1)
self.pi = Constant(Fraction(22, 7))
+ @_with_sympy
def test_fromsympy(self):
def test_fromsympy(self):
- import sympy
self.assertEqual(Constant.fromsympy(sympy.Rational(22, 7)), self.pi)
with self.assertRaises(TypeError):
Constant.fromsympy(sympy.Symbol('x'))
self.assertEqual(Constant.fromsympy(sympy.Rational(22, 7)), self.pi)
with self.assertRaises(TypeError):
Constant.fromsympy(sympy.Symbol('x'))
@@
-196,8
+212,8
@@
class TestSymbol(unittest.TestCase):
self.assertListEqual(list(symbols('x,y')), [self.x, self.y])
self.assertListEqual(list(symbols(['x', 'y'])), [self.x, self.y])
self.assertListEqual(list(symbols('x,y')), [self.x, self.y])
self.assertListEqual(list(symbols(['x', 'y'])), [self.x, self.y])
+ @_with_sympy
def test_fromsympy(self):
def test_fromsympy(self):
- import sympy
sp_x = sympy.Symbol('x')
self.assertEqual(Symbol.fromsympy(sp_x), self.x)
with self.assertRaises(TypeError):
sp_x = sympy.Symbol('x')
self.assertEqual(Symbol.fromsympy(sp_x), self.x)
with self.assertRaises(TypeError):