Fix Expression.__rsub__
[linpy.git] / tests / test_linear.py
index 3912fd3..4079d75 100644 (file)
@@ -12,7 +12,7 @@ class TestExpression(unittest.TestCase):
         self.x = symbol('x')
         self.y = symbol('y')
         self.z = symbol('z')
-        self.zero = constant(0)
+        self.zero = constant(5)
         self.pi = constant(Fraction(22, 7))
         self.e = self.x - 2*self.y + 3
 
@@ -23,6 +23,7 @@ class TestExpression(unittest.TestCase):
         self.assertCountEqual(self.x.symbols(), ['x'])
         self.assertCountEqual(self.pi.symbols(), [])
         self.assertCountEqual(self.e.symbols(), ['x', 'y'])
+        
 
     def test_dimension(self):
         self.assertEqual(self.x.dimension, 1)
@@ -98,6 +99,7 @@ class TestExpression(unittest.TestCase):
     def test_sub(self):
         self.assertEqual(self.x - self.x, 0)
         self.assertEqual(self.e - 3, self.x - 2*self.y)
+        self.assertEqual(0 - self.x, -self.x)
 
     def test_mul(self):
         self.assertEqual(self.pi * 7, 22)
@@ -110,6 +112,7 @@ class TestExpression(unittest.TestCase):
         self.assertEqual(self.e / 2, self.x / 2 - self.y + Fraction(3, 2))
 
     def test_str(self):
+        self.assertEqual(str(Expression()), '0')
         self.assertEqual(str(self.x), 'x')
         self.assertEqual(str(-self.x), '-x')
         self.assertEqual(str(self.pi), '22/7')
@@ -174,3 +177,4 @@ class TestPolyhedron(unittest.TestCase):
 
     pass
 
+