Skip to content

Commit 9b2508e

Browse files
authored
add tests for floats, zeroes
1 parent 8eb9c2f commit 9b2508e

File tree

1 file changed

+61
-0
lines changed

1 file changed

+61
-0
lines changed

maths/area.py

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ def surface_area_cube(side_length: float) -> float:
99
Calculate the Surface Area of a Cube.
1010
>>> surface_area_cube(1)
1111
6
12+
>>> surface_area_cube(1.6)
13+
15.360000000000003
14+
>>> surface_area_cube(0)
15+
0
1216
>>> surface_area_cube(3)
1317
54
1418
>>> surface_area_cube(-1)
@@ -26,6 +30,10 @@ def surface_area_cuboid(length: float, breadth: float, height: float) -> float:
2630
Calculate the Surface Area of a Cuboid.
2731
>>> surface_area_cuboid(1, 2, 3)
2832
22
33+
>>> surface_area_cuboid(0, 0, 0)
34+
0
35+
>>> surface_area_cuboid(1.6, 2.6, 3.6)
36+
38.56
2937
>>> surface_area_cuboid(-1, 2, 3)
3038
Traceback (most recent call last):
3139
...
@@ -53,6 +61,10 @@ def surface_area_sphere(radius: float) -> float:
5361
314.1592653589793
5462
>>> surface_area_sphere(1)
5563
12.566370614359172
64+
>>> surface_area_sphere(1.6)
65+
32.169908772759484
66+
>>> surface_area_sphere(0)
67+
0.0
5668
>>> surface_area_sphere(-1)
5769
Traceback (most recent call last):
5870
...
@@ -94,6 +106,10 @@ def surface_area_cone(radius: float, height: float) -> float:
94106
1130.9733552923256
95107
>>> surface_area_cone(6, 8)
96108
301.59289474462014
109+
>>> surface_area_cone(1.6, 2.6)
110+
23.387862992395807
111+
>>> surface_area_cone(0, 0)
112+
0.0
97113
>>> surface_area_cone(-1, -2)
98114
Traceback (most recent call last):
99115
...
@@ -121,6 +137,10 @@ def surface_area_conical_frustum(
121137
45.511728065337266
122138
>>> surface_area_conical_frustum(4, 5, 6)
123139
300.7913575056268
140+
>>> surface_area_conical_frustum(0, 0, 0)
141+
0.0
142+
>>> surface_area_conical_frustum(1.6, 2.6, 3.6)
143+
78.57907060751548
124144
>>> surface_area_conical_frustum(-1, 2, 3)
125145
Traceback (most recent call last):
126146
...
@@ -149,6 +169,10 @@ def surface_area_cylinder(radius: float, height: float) -> float:
149169
Formula: 2 * pi * r * (h + r)
150170
>>> surface_area_cylinder(7, 10)
151171
747.6990515543707
172+
>>> surface_area_cylinder(1.6, 2.6)
173+
42.22300526424682
174+
>>> surface_area_cylinder(0, 0)
175+
0.0
152176
>>> surface_area_cylinder(6, 8)
153177
527.7875658030853
154178
>>> surface_area_cylinder(-1, -2)
@@ -174,6 +198,10 @@ def area_rectangle(length: float, width: float) -> float:
174198
Calculate the area of a rectangle.
175199
>>> area_rectangle(10, 20)
176200
200
201+
>>> area_rectangle(1.6, 2.6)
202+
4.16
203+
>>> area_rectangle(0, 0)
204+
0
177205
>>> area_rectangle(-1, -2)
178206
Traceback (most recent call last):
179207
...
@@ -197,6 +225,10 @@ def area_square(side_length: float) -> float:
197225
Calculate the area of a square.
198226
>>> area_square(10)
199227
100
228+
>>> area_square(0)
229+
0
230+
>>> area_square(1.6)
231+
2.5600000000000005
200232
>>> area_square(-1)
201233
Traceback (most recent call last):
202234
...
@@ -212,6 +244,10 @@ def area_triangle(base: float, height: float) -> float:
212244
Calculate the area of a triangle given the base and height.
213245
>>> area_triangle(10, 10)
214246
50.0
247+
>>> area_triangle(1.6, 2.6)
248+
2.08
249+
>>> area_triangle(0, 0)
250+
0.0
215251
>>> area_triangle(-1, -2)
216252
Traceback (most recent call last):
217253
...
@@ -238,6 +274,10 @@ def area_triangle_three_sides(side1: float, side2: float, side3: float) -> float
238274
30.0
239275
>>> area_triangle_three_sides(10, 11, 12)
240276
51.521233486786784
277+
>>> area_triangle_three_sides(0, 0, 0)
278+
0.0
279+
>>> area_triangle_three_sides(1.6, 2.6, 3.6)
280+
1.8703742940919619
241281
>>> area_triangle_three_sides(-1, -2, -1)
242282
Traceback (most recent call last):
243283
...
@@ -278,6 +318,10 @@ def area_parallelogram(base: float, height: float) -> float:
278318
Calculate the area of a parallelogram.
279319
>>> area_parallelogram(10, 20)
280320
200
321+
>>> area_parallelogram(1.6, 2.6)
322+
4.16
323+
>>> area_parallelogram(0, 0)
324+
0
281325
>>> area_parallelogram(-1, -2)
282326
Traceback (most recent call last):
283327
...
@@ -301,6 +345,10 @@ def area_trapezium(base1: float, base2: float, height: float) -> float:
301345
Calculate the area of a trapezium.
302346
>>> area_trapezium(10, 20, 30)
303347
450.0
348+
>>> area_trapezium(1.6, 2.6, 3.6)
349+
7.5600000000000005
350+
>>> area_trapezium(0, 0, 0)
351+
0.0
304352
>>> area_trapezium(-1, -2, -3)
305353
Traceback (most recent call last):
306354
...
@@ -340,6 +388,10 @@ def area_circle(radius: float) -> float:
340388
Calculate the area of a circle.
341389
>>> area_circle(20)
342390
1256.6370614359173
391+
>>> area_circle(1.6)
392+
8.042477193189871
393+
>>> area_circle(0)
394+
0.0
343395
>>> area_circle(-1)
344396
Traceback (most recent call last):
345397
...
@@ -357,6 +409,10 @@ def area_ellipse(radius_x: float, radius_y: float) -> float:
357409
314.1592653589793
358410
>>> area_ellipse(10, 20)
359411
628.3185307179587
412+
>>> area_ellipse(0, 0)
413+
0.0
414+
>>> area_ellipse(1.6, 2.6)
415+
13.06902543893354
360416
>>> area_ellipse(-10, 20)
361417
Traceback (most recent call last):
362418
...
@@ -380,6 +436,10 @@ def area_rhombus(diagonal_1: float, diagonal_2: float) -> float:
380436
Calculate the area of a rhombus.
381437
>>> area_rhombus(10, 20)
382438
100.0
439+
>>> area_rhombus(1.6, 2.6)
440+
2.08
441+
>>> area_rhombus(0, 0)
442+
0.0
383443
>>> area_rhombus(-1, -2)
384444
Traceback (most recent call last):
385445
...
@@ -412,6 +472,7 @@ def area_rhombus(diagonal_1: float, diagonal_2: float) -> float:
412472
print(f"Rhombus: {area_rhombus(10, 20) = }")
413473
print(f"Trapezium: {area_trapezium(10, 20, 30) = }")
414474
print(f"Circle: {area_circle(20) = }")
475+
print(f"Ellipse: {area_ellipse(10, 20) = }")
415476
print("\nSurface Areas of various geometric shapes: \n")
416477
print(f"Cube: {surface_area_cube(20) = }")
417478
print(f"Cuboid: {surface_area_cuboid(10, 20, 30) = }")

0 commit comments

Comments
 (0)