Explorar o código

Added some unit tests for exponentiation expressions.

Sander Mathijs van Veen %!s(int64=14) %!d(string=hai) anos
pai
achega
003a9e2536
Modificáronse 1 ficheiros con 12 adicións e 2 borrados
  1. 12 2
      tests/test_line.py

+ 12 - 2
tests/test_line.py

@@ -45,10 +45,20 @@ class TestLine(unittest.TestCase):
         node_pow = Node('^', a, Node('+', b, c))
         self.assertEquals(generate_line(node_pow), 'a ^ (b + c)')
 
-    def test_pow_intermediate(self):
+    def test_pow_intermediate1(self):
+        # expression: (a(b+c))^(d+e)
         a, b, c, d, e = Leaf('a'), Leaf('b'), Leaf('c'), Leaf('d'), Leaf('e')
         node_bc = Node('+', b, c)
         node_de = Node('+', d, e)
         node_mul = Node('*', a, node_bc)
         node_pow = Node('^', node_mul, node_de)
-        self.assertEquals(generate_line(node_pow), 'a * (b + c) ^ (d + e)')
+        self.assertEquals(generate_line(node_pow), '(a * (b + c)) ^ (d + e)')
+
+    def test_pow_intermediate2(self):
+        # expression: a(b+c)^(d+e)
+        a, b, c, d, e = Leaf('a'), Leaf('b'), Leaf('c'), Leaf('d'), Leaf('e')
+        node_bc = Node('+', b, c)
+        node_de = Node('+', d, e)
+        node_pow = Node('^', node_bc, node_de)
+        node_mul = Node('*', a, node_pow)
+        self.assertEquals(generate_line(node_mul), 'a * (b + c) ^ (d + e)')