Skip to content

Commit 5209d8d

Browse files
committed
Angle function and test casese
1 parent 3372770 commit 5209d8d

File tree

1 file changed

+29
-1
lines changed

1 file changed

+29
-1
lines changed

Sprint-3/1-implement-and-rewrite-tests/implement/1-get-angle-type.js

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,19 @@
1515
// execute the code to ensure all tests pass.
1616

1717
function getAngleType(angle) {
18-
// TODO: Implement this function
18+
if (angle <= 0 || angle >= 360) {
19+
return "Invalid angle";
20+
} else if (angle > 0 && angle < 90) {
21+
return "Acute angle";
22+
} else if (angle > 90 && angle < 180) {
23+
return "Obtuse angle";
24+
} else if (angle === 90) {
25+
return "Right angle";
26+
} else if (angle === 180) {
27+
return "Straight angle";
28+
} else if (angle > 180 && angle < 360) {
29+
return "Reflex angle";
30+
}
1931
}
2032

2133
// The line below allows us to load the getAngleType function into tests in other files.
@@ -34,4 +46,20 @@ function assertEquals(actualOutput, targetOutput) {
3446
// TODO: Write tests to cover all cases, including boundary and invalid cases.
3547
// Example: Identify Right Angles
3648
const right = getAngleType(90);
49+
const acute1 = getAngleType(20);
50+
const invalid = getAngleType(0);
51+
const acute3 = getAngleType(89.999);
52+
const obtuse = getAngleType(98.25);
53+
const straightAngle = getAngleType(180);
54+
const invalid1 = getAngleType(360);
55+
const invalidAngle = getAngleType(362);
56+
const reflexAngle2 = getAngleType(210);
57+
3758
assertEquals(right, "Right angle");
59+
assertEquals(acute1, "Acute angle");
60+
assertEquals(invalid, "Invalid angle");
61+
assertEquals(obtuse, "Obtuse angle");
62+
assertEquals(straightAngle, "Straight angle");
63+
assertEquals(invalid1, "Invalid angle");
64+
assertEquals(invalidAngle, "Invalid angle");
65+
assertEquals(reflexAngle2, "Reflex angle");

0 commit comments

Comments
 (0)