From 06ae019e3130d0a91be3508c0d140d45e4ff4b22 Mon Sep 17 00:00:00 2001 From: levisweetbreu Date: Wed, 26 Jul 2023 14:13:34 -0500 Subject: [PATCH 1/3] added test_wall_area() --- tests/test_nodes.py | 103 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) diff --git a/tests/test_nodes.py b/tests/test_nodes.py index 53f08ababb..f49e6afc7e 100644 --- a/tests/test_nodes.py +++ b/tests/test_nodes.py @@ -637,6 +637,109 @@ class TestCase: "failed test {} expected {}, actual {}".format(case.name, expected, actual), ) + def test_wall_area(self): + """Test that the function wall_area returns the correct wall area.""" + + north = Settings.north + south = Settings.south + east = Settings.east + west = Settings.west + + wall_angle = Settings.wall_angle + wall_direction = Settings.wall_direction + wall_length = Settings.wall_length + + wall_area_north = Settings.wall_area_north + wall_area_south = Settings.wall_area_south + wall_area_east = Settings.wall_area_east + wall_area_west = Settings.wall_area_west + + square_root_one_half = 0.7071067811865476 + + square_input = pd.concat( + [ + pd.Series([[0.0, -90.0, 180.0, 90.0]], name=wall_angle), + pd.Series([[north, east, south, west]], name=wall_direction), + pd.Series([[1.0, 1.0, 1.0, 1.0]], name=wall_length), + ], + axis=1, + ) + triangle_input = pd.concat( + [ + pd.Series([[45.0, 180.0, -90.0]], name=wall_angle), + pd.Series([[west, south, east]], name=wall_direction), + pd.Series([[1.0, square_root_one_half, square_root_one_half]], name=wall_length), + ], + axis=1, + ) + eight_sided_input = pd.concat( + [ + pd.Series([[0.0, -90.0, 180.0, 90.0, -45.0, -135.0, 135.0, 45.0]], name=wall_angle), + pd.Series( + [[north, east, south, west, north, east, south, west]], name=wall_direction + ), + pd.Series([[1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0]], name=wall_length), + ], + axis=1, + ) + + @dataclass + class TestCase: + name: str + input: pd.DataFrame + expected: pd.DataFrame + + testcases = [ + TestCase( + name="square", + input=square_input, + expected=pd.concat( + [ + pd.Series([1.0], name=wall_area_north), + pd.Series([1.0], name=wall_area_east), + pd.Series([1.0], name=wall_area_south), + pd.Series([1.0], name=wall_area_west), + ], + axis=1, + ), + ), + TestCase( + name="triangle", + input=triangle_input, + expected=pd.concat( + [ + pd.Series([0.0], name=wall_area_north), + pd.Series([square_root_one_half], name=wall_area_east), + pd.Series([square_root_one_half], name=wall_area_south), + pd.Series([1.0], name=wall_area_west), + ], + axis=1, + ), + ), + TestCase( + name="eight sided", + input=eight_sided_input, + expected=pd.concat( + [ + pd.Series([6.0], name=wall_area_north), + pd.Series([8.0], name=wall_area_east), + pd.Series([10.0], name=wall_area_south), + pd.Series([12.0], name=wall_area_west), + ], + axis=1, + ), + ), + ] + + for case in testcases: + actual = nodes.wall_area(case.input) + expected = case.expected + pd.testing.assert_frame_equal( + expected, + actual, + "failed test {} expected {}, actual {}".format(case.name, expected, actual), + ) + if __name__ == "__main__": unittest.main() From 9da93043586b5db2c93862cbd92db380ce04bd21 Mon Sep 17 00:00:00 2001 From: levisweetbreu Date: Wed, 26 Jul 2023 14:24:43 -0500 Subject: [PATCH 2/3] changed dtype --- tests/test_nodes.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_nodes.py b/tests/test_nodes.py index f49e6afc7e..e05d0e87d7 100644 --- a/tests/test_nodes.py +++ b/tests/test_nodes.py @@ -708,7 +708,7 @@ class TestCase: input=triangle_input, expected=pd.concat( [ - pd.Series([0.0], name=wall_area_north), + pd.Series([0], name=wall_area_north), pd.Series([square_root_one_half], name=wall_area_east), pd.Series([square_root_one_half], name=wall_area_south), pd.Series([1.0], name=wall_area_west), From 875ce3a74180b2863e88adf2e64cddd52af25642 Mon Sep 17 00:00:00 2001 From: levisweetbreu Date: Thu, 27 Jul 2023 10:51:16 -0500 Subject: [PATCH 3/3] renamed wall_area() to wall_length() --- tests/test_nodes.py | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/tests/test_nodes.py b/tests/test_nodes.py index e05d0e87d7..57662e8baf 100644 --- a/tests/test_nodes.py +++ b/tests/test_nodes.py @@ -637,8 +637,8 @@ class TestCase: "failed test {} expected {}, actual {}".format(case.name, expected, actual), ) - def test_wall_area(self): - """Test that the function wall_area returns the correct wall area.""" + def test_wall_length(self): + """Test that the function wall_length returns the correct wall area.""" north = Settings.north south = Settings.south @@ -649,10 +649,10 @@ def test_wall_area(self): wall_direction = Settings.wall_direction wall_length = Settings.wall_length - wall_area_north = Settings.wall_area_north - wall_area_south = Settings.wall_area_south - wall_area_east = Settings.wall_area_east - wall_area_west = Settings.wall_area_west + wall_length_north = Settings.wall_length_north + wall_length_south = Settings.wall_length_south + wall_length_east = Settings.wall_length_east + wall_length_west = Settings.wall_length_west square_root_one_half = 0.7071067811865476 @@ -695,10 +695,10 @@ class TestCase: input=square_input, expected=pd.concat( [ - pd.Series([1.0], name=wall_area_north), - pd.Series([1.0], name=wall_area_east), - pd.Series([1.0], name=wall_area_south), - pd.Series([1.0], name=wall_area_west), + pd.Series([1.0], name=wall_length_north), + pd.Series([1.0], name=wall_length_east), + pd.Series([1.0], name=wall_length_south), + pd.Series([1.0], name=wall_length_west), ], axis=1, ), @@ -708,10 +708,10 @@ class TestCase: input=triangle_input, expected=pd.concat( [ - pd.Series([0], name=wall_area_north), - pd.Series([square_root_one_half], name=wall_area_east), - pd.Series([square_root_one_half], name=wall_area_south), - pd.Series([1.0], name=wall_area_west), + pd.Series([0], name=wall_length_north), + pd.Series([square_root_one_half], name=wall_length_east), + pd.Series([square_root_one_half], name=wall_length_south), + pd.Series([1.0], name=wall_length_west), ], axis=1, ), @@ -721,10 +721,10 @@ class TestCase: input=eight_sided_input, expected=pd.concat( [ - pd.Series([6.0], name=wall_area_north), - pd.Series([8.0], name=wall_area_east), - pd.Series([10.0], name=wall_area_south), - pd.Series([12.0], name=wall_area_west), + pd.Series([6.0], name=wall_length_north), + pd.Series([8.0], name=wall_length_east), + pd.Series([10.0], name=wall_length_south), + pd.Series([12.0], name=wall_length_west), ], axis=1, ), @@ -732,7 +732,7 @@ class TestCase: ] for case in testcases: - actual = nodes.wall_area(case.input) + actual = nodes.wall_length(case.input) expected = case.expected pd.testing.assert_frame_equal( expected,