1515// execute the code to ensure all tests pass.
1616
1717function getAngleType ( angle ) {
18- // TODO: Implement this function
18+ // Check invalid angles first
19+ if ( angle <= 0 || angle >= 360 ) {
20+ return "Invalid angle" ;
21+ }
22+
23+ // Acute angle
24+ if ( angle > 0 && angle < 90 ) {
25+ return "Acute angle" ;
26+ }
27+
28+ // Right angle
29+ if ( angle === 90 ) {
30+ return "Right angle" ;
31+ }
32+
33+ // Obtuse angle
34+ if ( angle > 90 && angle < 180 ) {
35+ return "Obtuse angle" ;
36+ }
37+
38+ // Straight angle
39+ if ( angle === 180 ) {
40+ return "Straight angle" ;
41+ }
42+
43+ // Reflex angle
44+ if ( angle > 180 && angle < 360 ) {
45+ return "Reflex angle" ;
46+ }
1947}
2048
2149// The line below allows us to load the getAngleType function into tests in other files.
@@ -35,3 +63,23 @@ function assertEquals(actualOutput, targetOutput) {
3563// Example: Identify Right Angles
3664const right = getAngleType ( 90 ) ;
3765assertEquals ( right , "Right angle" ) ;
66+
67+ // Acute angle tests
68+ assertEquals ( getAngleType ( 30 ) , "Acute angle" ) ;
69+ assertEquals ( getAngleType ( 1 ) , "Acute angle" ) ;
70+
71+ // Obtuse angle tests
72+ assertEquals ( getAngleType ( 120 ) , "Obtuse angle" ) ;
73+ assertEquals ( getAngleType ( 179 ) , "Obtuse angle" ) ;
74+
75+ // Straight angle test
76+ assertEquals ( getAngleType ( 180 ) , "Straight angle" ) ;
77+
78+ // Reflex angle tests
79+ assertEquals ( getAngleType ( 270 ) , "Reflex angle" ) ;
80+ assertEquals ( getAngleType ( 359 ) , "Reflex angle" ) ;
81+
82+ // Invalid angle tests
83+ assertEquals ( getAngleType ( 0 ) , "Invalid angle" ) ;
84+ assertEquals ( getAngleType ( 360 ) , "Invalid angle" ) ;
85+ assertEquals ( getAngleType ( - 20 ) , "Invalid angle" ) ;
0 commit comments