Skip to content

Commit 9f62701

Browse files
committed
Fix: handle invalid angles below 0 or above 360 in getAngleType
1 parent d5c9c23 commit 9f62701

File tree

2 files changed

+15
-4
lines changed

2 files changed

+15
-4
lines changed

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

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@
88
// Then, write the next test! :) Go through this process until all the cases are implemented
99

1010
function getAngleType(angle) {
11-
if (angle === 90) {
11+
if (angle < 0 || angle >= 360) {
12+
return "Invalid angle";
13+
} else if (angle === 90) {
1214
return "Right angle";
1315
} else if (angle < 90) {
1416
return "Acute angle";
@@ -18,11 +20,15 @@ function getAngleType(angle) {
1820
return "Straight angle";
1921
} else if (angle > 180 && angle < 360) {
2022
return "Reflex angle";
21-
}
23+
} else {
24+
return "Invalid angle";
25+
}
26+
}
27+
2228

2329
// Run the tests, work out what Case 2 is testing, and implement the required code here.
2430
// Then keep going for the other cases, one at a time.
25-
}
31+
2632

2733
// The line below allows us to load the getAngleType function into tests in other files.
2834
// This will be useful in the "rewrite tests with jest" step.

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

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,9 @@ test("should identify straight angle (180°)", () => {
3535
// Then the function should return "Reflex angle"
3636
test("should identify reflex angle (>180° and <360°)", () => {
3737
expect(getAngleType(270)).toEqual("Reflex angle");
38-
});
38+
});
39+
40+
// Additional tests for invalid angles
41+
42+
expect(getAngleType(-10)).toBe("Invalid angle");
43+
expect(getAngleType(400)).toBe("Invalid angle");

0 commit comments

Comments
 (0)