Skip to content
Snippets Groups Projects
Commit 805a9166 authored by Taddeus Kroes's avatar Taddeus Kroes
Browse files

Added some match cases for coverage.

parent 92da9da9
No related branches found
No related tags found
No related merge requests found
...@@ -140,9 +140,10 @@ MESSAGES[equalize_denominators] = _('Equalize the denominators of division' ...@@ -140,9 +140,10 @@ MESSAGES[equalize_denominators] = _('Equalize the denominators of division'
def add_nominators(root, args): def add_nominators(root, args):
""" """
a / b + c / b -> (a + c) / b a / b + c / b -> (a + c) / b
a / -b + c / -b -> (a + c) / -b a / b - c / b -> (a - c) / b
a / -b - c / -b -> (a - c) / -b -(a / b) + c / b -> -((a + c) / b)
-(a / b) - c / b -> (c - a) / -b
""" """
# TODO: is 'add' Appropriate when rewriting to "(a + (-c)) / b"? # TODO: is 'add' Appropriate when rewriting to "(a + (-c)) / b"?
ab, cb = args ab, cb = args
......
...@@ -18,7 +18,7 @@ def add_numerics(root, args): ...@@ -18,7 +18,7 @@ def add_numerics(root, args):
n0, n1, c0, c1 = args n0, n1, c0, c1 = args
if c0.is_op(OP_NEG): if c0.is_op(OP_NEG):
c0 = (-c0[0].value) c0 = -c0[0].value
else: else:
c0 = c0.value c0 = c0.value
......
...@@ -34,6 +34,7 @@ class TestNode(RulesTestCase): ...@@ -34,6 +34,7 @@ class TestNode(RulesTestCase):
self.assertTrue(N('+', *self.l[:2]).is_op_or_negated(OP_ADD)) self.assertTrue(N('+', *self.l[:2]).is_op_or_negated(OP_ADD))
self.assertTrue(N('-', N('+', *self.l[:2])).is_op_or_negated(OP_ADD)) self.assertTrue(N('-', N('+', *self.l[:2])).is_op_or_negated(OP_ADD))
self.assertFalse(N('-', *self.l[:2]).is_op_or_negated(OP_ADD)) self.assertFalse(N('-', *self.l[:2]).is_op_or_negated(OP_ADD))
self.assertFalse(self.l[0].is_op_or_negated(OP_ADD))
def test_is_leaf(self): def test_is_leaf(self):
self.assertTrue(L(2).is_leaf()) self.assertTrue(L(2).is_leaf())
......
...@@ -17,6 +17,7 @@ class TestRulesNumerics(RulesTestCase): ...@@ -17,6 +17,7 @@ class TestRulesNumerics(RulesTestCase):
def test_add_numerics_negations(self): def test_add_numerics_negations(self):
l0, a, l1 = tree('1,a,2') l0, a, l1 = tree('1,a,2')
self.assertEqual(add_numerics(-l0 + l1, (-l0, l1, -L(1), L(2))), 1)
self.assertEqual(add_numerics(l0 + -l1, (l0, -l1, L(1), -L(2))), -1) self.assertEqual(add_numerics(l0 + -l1, (l0, -l1, L(1), -L(2))), -1)
self.assertEqual(add_numerics(l0 + a + -l1, (l0, -l1, L(1), -L(2))), self.assertEqual(add_numerics(l0 + a + -l1, (l0, -l1, L(1), -L(2))),
L(-1) + a) L(-1) + a)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment