1+ /**
12// This statement loads the getAngleType function you wrote in the implement directory.
23// We will use the same function, but write tests for it using Jest in this file.
34const getAngleType = require("../implement/1-get-angle-type");
@@ -18,3 +19,66 @@ test(`should return "Acute angle" when (0 < angle < 90)`, () => {
1819// Case 4: Straight angle
1920// Case 5: Reflex angles
2021// Case 6: Invalid angles
22+ *
23+ */
24+
25+ // Written by me @Carlos Abreu
26+
27+ const getAngleType = require ( './1-get-angle-type.js' ) ;
28+
29+ describe ( 'getAngleType function' , ( ) => {
30+
31+ describe ( 'Acute angles' , ( ) => {
32+ test ( 'should return "Acute angle" for angles between 0 and 90 degrees' , ( ) => {
33+ expect ( getAngleType ( 45 ) ) . toBe ( "Acute angle" ) ;
34+ expect ( getAngleType ( 1 ) ) . toBe ( "Acute angle" ) ;
35+ expect ( getAngleType ( 89 ) ) . toBe ( "Acute angle" ) ;
36+ } ) ;
37+ } ) ;
38+
39+ describe ( 'Right angle' , ( ) => {
40+ test ( 'should return "Right angle" for exactly 90 degrees' , ( ) => {
41+ expect ( getAngleType ( 90 ) ) . toBe ( "Right angle" ) ;
42+ } ) ;
43+ } ) ;
44+
45+ describe ( 'Obtuse angles' , ( ) => {
46+ test ( 'should return "Obtuse angle" for angles between 90 and 180 degrees' , ( ) => {
47+ expect ( getAngleType ( 95 ) ) . toBe ( "Obtuse angle" ) ;
48+ expect ( getAngleType ( 135 ) ) . toBe ( "Obtuse angle" ) ;
49+ expect ( getAngleType ( 179 ) ) . toBe ( "Obtuse angle" ) ;
50+ } ) ;
51+ } ) ;
52+
53+ describe ( 'Straight angle' , ( ) => {
54+ test ( 'should return "Straight angle" for exactly 180 degrees' , ( ) => {
55+ expect ( getAngleType ( 180 ) ) . toBe ( "Straight angle" ) ;
56+ } ) ;
57+ } ) ;
58+
59+ describe ( 'Reflex angles' , ( ) => {
60+ test ( 'should return "Reflex angle" for angles between 180 and 360 degrees' , ( ) => {
61+ expect ( getAngleType ( 185 ) ) . toBe ( "Reflex angle" ) ;
62+ expect ( getAngleType ( 270 ) ) . toBe ( "Reflex angle" ) ;
63+ expect ( getAngleType ( 359 ) ) . toBe ( "Reflex angle" ) ;
64+ } ) ;
65+ } ) ;
66+
67+ describe ( 'Invalid angles' , ( ) => {
68+ test ( 'should return "Invalid angle" for angles less than or equal to 0' , ( ) => {
69+ expect ( getAngleType ( 0 ) ) . toBe ( "Invalid angle" ) ;
70+ expect ( getAngleType ( - 45 ) ) . toBe ( "Invalid angle" ) ;
71+ expect ( getAngleType ( - 90 ) ) . toBe ( "Invalid angle" ) ;
72+ expect ( getAngleType ( - 180 ) ) . toBe ( "Invalid angle" ) ;
73+ } ) ;
74+
75+ test ( 'should return "Invalid angle" for angles greater than or equal to 360' , ( ) => {
76+ expect ( getAngleType ( 360 ) ) . toBe ( "Invalid angle" ) ;
77+ expect ( getAngleType ( 365 ) ) . toBe ( "Invalid angle" ) ;
78+ expect ( getAngleType ( 400 ) ) . toBe ( "Invalid angle" ) ;
79+ expect ( getAngleType ( 720 ) ) . toBe ( "Invalid angle" ) ;
80+ } ) ;
81+ } ) ;
82+
83+ } ) ;
84+
0 commit comments