From b702cf0c2008b360abf157f905d3375ae24d1cb4 Mon Sep 17 00:00:00 2001 From: EdwardTL Date: Fri, 10 Jul 2020 11:43:09 -0500 Subject: [PATCH] =?UTF-8?q?Reto=20Resuelto.=20Dise=C3=B1ados=20y=20aprobad?= =?UTF-8?q?os=203=20tests?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- challenge.py | 46 ++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 42 insertions(+), 4 deletions(-) diff --git a/challenge.py b/challenge.py index 2653d7e..1957640 100644 --- a/challenge.py +++ b/challenge.py @@ -2,9 +2,10 @@ def make_division_by(n): """This closure returns a function that returns the division of an x number by n """ - # You have to code here! - pass + def division_by(x): + return x/n + return division_by def run(): division_by_3 = make_division_by(3) @@ -21,8 +22,45 @@ def run(): import unittest class ClosureSuite(unittest.TestCase): + def setUp(self): + self.test_of_division_by_3 = { + 18: 6, + 33: 11, + 57: 19 + } + + self.test_of_division_by_5 = { + 30: 6, + 55: 11, + 95: 19 + } + + self.test_of_division_by_18 = { + 108: 6, + 198: 11, + 342: 19 + } + def test_closure_make_division_by(self): - # Make the closure test here - pass + for key, value in self.test_of_division_by_3.items(): + division_by_3 = make_division_by(3) + result = division_by_3(key) + self.assertEqual(value, result) + + for key, value in self.test_of_division_by_5.items(): + division_by_5 = make_division_by(5) + result = division_by_5(key) + self.assertEqual(value, result) + + for key, value in self.test_of_division_by_18.items(): + division_by_18 = make_division_by(18) + result = division_by_18(key) + self.assertEqual(value, result) + + def tearDown(self): + del(self.test_of_division_by_3) + del(self.test_of_division_by_5) + del(self.test_of_division_by_18) run() + unittest.main()