test_rules_utils.py 815 B

123456789101112131415161718192021222324
  1. import unittest
  2. from src.rules.utils import least_common_multiple, is_fraction, partition
  3. from tests.rulestestcase import tree
  4. class TestRulesUtils(unittest.TestCase):
  5. def test_least_common_multiple(self):
  6. self.assertEqual(least_common_multiple(5, 6), 30)
  7. self.assertEqual(least_common_multiple(5, 6, 15), 30)
  8. self.assertEqual(least_common_multiple(2, 4), 4)
  9. def test_is_fraction(self):
  10. l1, a = tree('1, a')
  11. self.assertTrue(is_fraction(a / 2, a, 2))
  12. self.assertTrue(is_fraction(l1 / 2 * a, a, 2))
  13. self.assertTrue(is_fraction(a * (l1 / 2), a, 2))
  14. self.assertFalse(is_fraction(l1 / 3 * a, a, 2))
  15. def test_partition(self):
  16. self.assertEqual(partition(lambda x: x & 1, range(6)),
  17. ([1, 3, 5], [0, 2, 4]))