From e71aceebfccd0b885eb61de8c4dee9e770d35ded Mon Sep 17 00:00:00 2001 From: Juan Andres Quiroz Date: Mon, 11 May 2020 10:05:20 -0500 Subject: [PATCH 1/4] Challenge solved --- .gitignore | 3 +++ challenge.py | 55 ++++++++++++++++++++++------------------------------ tests.py | 2 +- 3 files changed, 27 insertions(+), 33 deletions(-) diff --git a/.gitignore b/.gitignore index b6e4761..1d5c63a 100644 --- a/.gitignore +++ b/.gitignore @@ -127,3 +127,6 @@ dmypy.json # Pyre type checker .pyre/ + +# vscode folder +.vscode/ \ No newline at end of file diff --git a/challenge.py b/challenge.py index ffdfcce..f17d797 100644 --- a/challenge.py +++ b/challenge.py @@ -3,52 +3,37 @@ def square_area(side): """Returns the area of a square""" - # You have to code here - # REMEMBER: Tests first!!! - pass + return side**2 def rectangle_area(base, height): """Returns the area of a rectangle""" - # You have to code here - # REMEMBER: Tests first!!! - pass + return base*height def triangle_area(base, height): """Returns the area of a triangle""" - # You have to code here - # REMEMBER: Tests first!!! - pass + return base*height/2 def rhombus_area(diagonal_1, diagonal_2): """Returns the area of a rhombus""" - # You have to code here - # REMEMBER: Tests first!!! - pass + return diagonal_1*diagonal_2/2 def trapezoid_area(base_minor, base_major, height): """Returns the area of a trapezoid""" - # You have to code here - # REMEMBER: Tests first!!! - pass + return ((base_major+base_minor)/2)*height def regular_polygon_area(perimeter, apothem): """Returns the area of a regular polygon""" - # You have to code here - # REMEMBER: Tests first!!! - pass + return (perimeter*apothem)/2 def circumference_area(radius): """Returns the area of a circumference""" - # You have to code here - # REMEMBER: Tests first!!! - # Use math.pi for π value - pass + return(round(math.pi*radius**2,3)) if __name__ == '__main__': @@ -57,32 +42,38 @@ def circumference_area(radius): class GeometrySuite(unittest.TestCase): def setUp(self): - # Initialize the needed values for the tests - pass + self.areas={'square':[16,4], + 'rectangle':[30,6,5], + 'triangle':[7.5,5,3], + 'rhombus':[25,5,10], + 'trapezoid':[8,3,5,2], + 'polygon':[168,48,7], + 'circumference':[12.566,2] + } def test_square_area(self): - # Make this test first... + self.assertEqual(self.areas['square'][0],square_area(self.areas['square'][1])) def test_rectangle_area(self): - # Make this test first... + self.assertEqual(self.areas['rectangle'][0],rectangle_area(self.areas['rectangle'][1],self.areas['rectangle'][2])) def test_triangle_area(self): - # Make this test first... + self.assertEqual(self.areas['triangle'][0],triangle_area(self.areas['triangle'][1],self.areas['triangle'][2])) def test_rhombus_area(self): - # Make this test first... + self.assertEqual(self.areas['rhombus'][0],rhombus_area(self.areas['rhombus'][1],self.areas['rhombus'][2])) def test_trapezoid_area(self): - # Make this test first... + self.assertEqual(self.areas['trapezoid'][0],trapezoid_area(self.areas['trapezoid'][1],self.areas['trapezoid'][2],self.areas['trapezoid'][3])) def test_regular_polygon_area(self): - # Make this test first... + self.assertEqual(self.areas['polygon'][0],regular_polygon_area(self.areas['polygon'][1],self.areas['polygon'][2])) def test_circumference_area(self): - # Make this test first... + self.assertEqual(self.areas['circumference'][0],circumference_area(self.areas['circumference'][1])) def tearDown(self): - # Delete the needed values for the tests + del(self.areas) pass unittest.main() diff --git a/tests.py b/tests.py index 7cfb733..64ad7ff 100644 --- a/tests.py +++ b/tests.py @@ -13,7 +13,7 @@ def setUp(self): self.strings = { 'hola': 'aloh', 'adios': 'soida', - 'roma': 'amor' + 'roma': 'amor', } def test_reverse_string(self): From 71beeeeb0bdfe9d260af2cb154d74ff44325b102 Mon Sep 17 00:00:00 2001 From: Juan Andres Quiroz Date: Mon, 11 May 2020 10:10:23 -0500 Subject: [PATCH 2/4] Challenge solved, fix some sintax error --- tests.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests.py b/tests.py index 64ad7ff..7cfb733 100644 --- a/tests.py +++ b/tests.py @@ -13,7 +13,7 @@ def setUp(self): self.strings = { 'hola': 'aloh', 'adios': 'soida', - 'roma': 'amor', + 'roma': 'amor' } def test_reverse_string(self): From 78097db537e20f1274745929b23e3fb48d4c8e7a Mon Sep 17 00:00:00 2001 From: Juan Andres Quiroz Date: Fri, 15 May 2020 18:37:44 -0500 Subject: [PATCH 3/4] Se agregan espacios para mejorar legilibilidad --- challenge.py | 66 +++++++++++++++++++++++++++++++++------------------- 1 file changed, 42 insertions(+), 24 deletions(-) diff --git a/challenge.py b/challenge.py index f17d797..16e55d8 100644 --- a/challenge.py +++ b/challenge.py @@ -8,72 +8,90 @@ def square_area(side): def rectangle_area(base, height): """Returns the area of a rectangle""" - return base*height + return base * height def triangle_area(base, height): """Returns the area of a triangle""" - return base*height/2 + return base * height / 2 def rhombus_area(diagonal_1, diagonal_2): """Returns the area of a rhombus""" - return diagonal_1*diagonal_2/2 + return diagonal_1 * diagonal_2 / 2 def trapezoid_area(base_minor, base_major, height): """Returns the area of a trapezoid""" - return ((base_major+base_minor)/2)*height + return ((base_major + base_minor) / 2) * height def regular_polygon_area(perimeter, apothem): """Returns the area of a regular polygon""" - return (perimeter*apothem)/2 + return (perimeter * apothem) / 2 def circumference_area(radius): """Returns the area of a circumference""" - return(round(math.pi*radius**2,3)) + return (round(math.pi * radius**2, 3)) if __name__ == '__main__': import unittest class GeometrySuite(unittest.TestCase): - def setUp(self): - self.areas={'square':[16,4], - 'rectangle':[30,6,5], - 'triangle':[7.5,5,3], - 'rhombus':[25,5,10], - 'trapezoid':[8,3,5,2], - 'polygon':[168,48,7], - 'circumference':[12.566,2] - } + self.areas = { + 'square': [16, 4], + 'rectangle': [30, 6, 5], + 'triangle': [7.5, 5, 3], + 'rhombus': [25, 5, 10], + 'trapezoid': [8, 3, 5, 2], + 'polygon': [168, 48, 7], + 'circumference': [12.566, 2] + } def test_square_area(self): - self.assertEqual(self.areas['square'][0],square_area(self.areas['square'][1])) + self.assertEqual(self.areas['square'][0], + square_area(self.areas['square'][1])) def test_rectangle_area(self): - self.assertEqual(self.areas['rectangle'][0],rectangle_area(self.areas['rectangle'][1],self.areas['rectangle'][2])) + self.assertEqual( + self.areas['rectangle'][0], + rectangle_area(self.areas['rectangle'][1], + self.areas['rectangle'][2])) def test_triangle_area(self): - self.assertEqual(self.areas['triangle'][0],triangle_area(self.areas['triangle'][1],self.areas['triangle'][2])) + self.assertEqual( + self.areas['triangle'][0], + triangle_area(self.areas['triangle'][1], + self.areas['triangle'][2])) def test_rhombus_area(self): - self.assertEqual(self.areas['rhombus'][0],rhombus_area(self.areas['rhombus'][1],self.areas['rhombus'][2])) + self.assertEqual( + self.areas['rhombus'][0], + rhombus_area(self.areas['rhombus'][1], + self.areas['rhombus'][2])) def test_trapezoid_area(self): - self.assertEqual(self.areas['trapezoid'][0],trapezoid_area(self.areas['trapezoid'][1],self.areas['trapezoid'][2],self.areas['trapezoid'][3])) + self.assertEqual( + self.areas['trapezoid'][0], + trapezoid_area(self.areas['trapezoid'][1], + self.areas['trapezoid'][2], + self.areas['trapezoid'][3])) def test_regular_polygon_area(self): - self.assertEqual(self.areas['polygon'][0],regular_polygon_area(self.areas['polygon'][1],self.areas['polygon'][2])) + self.assertEqual( + self.areas['polygon'][0], + regular_polygon_area(self.areas['polygon'][1], + self.areas['polygon'][2])) def test_circumference_area(self): - self.assertEqual(self.areas['circumference'][0],circumference_area(self.areas['circumference'][1])) + self.assertEqual( + self.areas['circumference'][0], + circumference_area(self.areas['circumference'][1])) def tearDown(self): - del(self.areas) - pass + del (self.areas) unittest.main() From 0defef92a2e693c07db5e10aa7ce9995091c4294 Mon Sep 17 00:00:00 2001 From: Juan Andres Quiroz Date: Sat, 16 May 2020 10:12:25 -0500 Subject: [PATCH 4/4] Se agregan comentarios explicando el caso cuando se usa setUp --- challenge.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/challenge.py b/challenge.py index 16e55d8..7d84d48 100644 --- a/challenge.py +++ b/challenge.py @@ -41,6 +41,8 @@ def circumference_area(radius): class GeometrySuite(unittest.TestCase): def setUp(self): + #!El setUp sólo se recomienda cuando los mismos datos sirven para diferentes Tests, y va + #!con el TearDown al final self.areas = { 'square': [16, 4], 'rectangle': [30, 6, 5], @@ -92,6 +94,7 @@ def test_circumference_area(self): circumference_area(self.areas['circumference'][1])) def tearDown(self): + #!Acompaña al setUp del (self.areas) unittest.main()