12345678910111213141516171819202122232425262728 |
- from django.test import TestCase
-
- from oscar.core.utils import compose
-
-
- class TestComposeFunction(TestCase):
-
- def test_composes_two_single_arg_functions(self):
- double = lambda x: 2 * x
- triple = lambda x: 3 * x
-
- f = compose(double, triple)
- self.assertEqual(f(2), 2 * 2 * 3)
-
- def test_composes_three_single_arg_functions(self):
- double = lambda x: 2 * x
- triple = lambda x: 3 * x
- quadruple = lambda x: 4 * x
-
- f = compose(double, triple, quadruple)
- self.assertEqual(f(2), 2 * 2 * 3 * 4)
-
- def test_composes_two_multi_arg_functions(self):
- double = lambda x, y: (2 * x, 2 * y)
- triple = lambda x, y: (3 * x, 3 * y)
-
- f = compose(double, triple)
- self.assertEqual(f(2, 4), (2 * 2 * 3, 4 * 2 * 3))
|