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_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))
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))