@@ -9,65 +9,16 @@ function secondStatus(seconds){
99
1010function fiveHoursStatus ( hours ) {
1111 const a = Math . floor ( hours / 5 ) ;
12- switch ( a ) {
13- case 1 :
14- return 'ROOO' ;
15- break ;
16- case 2 :
17- return 'RROO' ;
18- break ;
19- case 3 :
20- return 'RRRO' ;
21- break ;
22- case 4 :
23- return 'RRRR' ;
24- break ;
25- default :
26- return 'OOOO' ;
27- break ;
28- }
29- }
30-
31- function oneHourStatus ( hours ) {
32- const a = hours % 5 ;
33- switch ( a ) {
34- case 1 :
12+ if ( a == 0 )
13+ return "OOOO" ;
14+ else if ( a == 1 )
3515 return "ROOO" ;
36- break ;
37- case 2 :
16+ else if ( a == 2 )
3817 return "RROO" ;
39- break ;
40- case 3 :
18+ else if ( a === 3 )
4119 return "RRRO" ;
42- break ;
43- case 4 :
20+ else if ( a === 4 )
4421 return "RRRR" ;
45- break ;
46- default :
47- return "OOOO" ;
48- break ;
49- }
50-
51- }
52-
53- function fiveMinutesStatus ( minutes ) {
54- let yellowLightOn = 'Y' ;
55- let lightsOff = 'O' ;
56- let redLightOn = 'YYR' ;
57- let currentMins = minutes / 5 ;
58-
59- if ( minutes % 3 === 0 )
60- {
61- let quotient = minutes / 15 ;
62- const numRedLightsOn = redLightOn . repeat ( quotient ) ;
63- const reminderLights = lightsOff . repeat ( 11 - 3 ) ;
64- return numRedLightsOn + reminderLights
65- }
66-
67-
68- const lightsOn = yellowLightOn . repeat ( currentMins ) ;
69- const remainingLights = lightsOff . repeat ( 11 - currentMins ) ;
70- return lightsOn + remainingLights ;
7122}
7223
7324describe ( "Berlin Clock" , ( ) => {
@@ -102,44 +53,4 @@ describe("Berlin Clock", () => {
10253 it ( "Given 20 hour, returns RRRR" , ( ) => {
10354 assert . equal ( fiveHoursStatus ( 20 ) , "RRRR" )
10455 } ) ;
105-
106- it ( "Given 1 hour, returns ROOO" , ( ) => {
107- assert . equal ( oneHourStatus ( 1 ) , "ROOO" )
108- } ) ;
109-
110- it ( "Given 2 hour, returns RROO" , ( ) => {
111- assert . equal ( oneHourStatus ( 2 ) , "RROO" )
112- } ) ;
113-
114- it ( "Given 3 hour, returns RRRO" , ( ) => {
115- assert . equal ( oneHourStatus ( 3 ) , "RRRO" )
116- } ) ;
117-
118- it ( "Given 4 hour, returns RRRR" , ( ) => {
119- assert . equal ( oneHourStatus ( 4 ) , "RRRR" )
120- } ) ;
121-
122- it ( "Given 5 hour, returns OOOO" , ( ) => {
123- assert . equal ( oneHourStatus ( 5 ) , "OOOO" )
124- } ) ;
125-
126- it ( "Given 6 hour, returns ROOO" , ( ) => {
127- assert . equal ( oneHourStatus ( 6 ) , "ROOO" )
128- } ) ;
129-
130- it ( "Given 0 minutes, returns OOOOOOOOOOO" , ( ) => {
131- assert . equal ( fiveMinutesStatus ( 0 ) , "OOOOOOOOOOO" )
132- } ) ;
133-
134- it ( "Given 5 minutes, returns YOOOOOOOOOO" , ( ) => {
135- assert . equal ( fiveMinutesStatus ( 5 ) , "YOOOOOOOOOO" )
136- } ) ;
137-
138- it ( "Given 10 minutes, returns YYOOOOOOOOO" , ( ) => {
139- assert . equal ( fiveMinutesStatus ( 10 ) , "YYOOOOOOOOO" )
140- } ) ;
141-
142- it ( "Given 15 minutes, returns YYROOOOOOOO" , ( ) => {
143- assert . equal ( fiveMinutesStatus ( 15 ) , "YYROOOOOOOO" )
144- } ) ;
14556} ) ;
0 commit comments