@@ -2,182 +2,61 @@ const memoria = require('./index')
22
33describe ( 'memoria' , ( ) => {
44 describe ( 'passo 1' , ( ) => {
5- let answer
6-
7- previousStep0 = [ ]
8- currentStep0 = [ 1 , 1 , 3 , 4 , 2 ]
9- expectAnswerStep0 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] ]
10- it ( 'deveria retornar 3' , ( ) => {
11- const resp = memoria ( previousStep0 , currentStep0 )
12- expect ( resp ) . toStrictEqual ( expectAnswerStep0 )
13- } )
14-
15- previousStep1 = [ ]
16- currentStep1 = [ 2 , 3 , 4 , 1 , 2 ]
17- expectAnswerStep1 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] ]
18- it ( 'deveria retornar 4' , ( ) => {
19- const resp = memoria ( previousStep1 , currentStep1 )
20- expect ( resp ) . toStrictEqual ( expectAnswerStep1 )
21- } )
22-
23- previousStep2 = [ ]
24- currentStep2 = [ 3 , 4 , 1 , 3 , 2 ]
25- expectAnswerStep2 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] ]
26- it ( 'deveria retornar 3' , ( ) => {
27- const resp = memoria ( previousStep2 , currentStep2 )
28- expect ( resp ) . toStrictEqual ( expectAnswerStep2 )
29- } )
30-
31- previousStep3 = [ ]
32- currentStep3 = [ 4 , 3 , 4 , 1 , 2 ]
33- expectAnswerStep3 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] ]
34- it ( 'deveria retornar 2' , ( ) => {
35- const resp = memoria ( previousStep3 , currentStep3 )
36- expect ( resp ) . toStrictEqual ( expectAnswerStep3 )
5+ it ( 'Deveria retornar 3 se o número no visor do primeiro passo é 1 e o botão na segunda posição é 3' , ( ) => {
6+ previousSteps = [ ]
7+ currentStep = [ 1 , 1 , 3 , 4 , 2 ]
8+ expectAnswerStep = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] ]
9+ const resp = memoria ( previousSteps , currentStep )
10+ expect ( resp ) . toStrictEqual ( expectAnswerStep )
3711 } )
3812 } )
3913
4014 describe ( 'passo 2' , ( ) => {
41- let answer
42-
43- previousStep4 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] ]
44- currentStep4 = [ 2 , 3 , 4 , 1 , 2 ]
45- expectAnswerStep4 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] ]
46- it ( 'deveria retornar 3' , ( ) => {
47- const resp = memoria ( previousStep4 , currentStep4 )
48- expect ( resp ) . toStrictEqual ( expectAnswerStep4 )
49- } )
50-
51- previousStep5 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] ]
52- currentStep5 = [ 3 , 4 , 1 , 3 , 2 ]
53- expectAnswerStep5 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] ]
54- it ( 'deveria retornar 4' , ( ) => {
55- const resp = memoria ( previousStep5 , currentStep5 )
56- expect ( resp ) . toStrictEqual ( expectAnswerStep5 )
57- } )
58-
59- previousStep6 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] ]
60- currentStep6 = [ 4 , 3 , 4 , 1 , 2 ]
61- expectAnswerStep6 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] ]
62- it ( 'deveria retornar 3' , ( ) => {
63- const resp = memoria ( previousStep6 , currentStep6 )
64- expect ( resp ) . toStrictEqual ( expectAnswerStep6 )
65- } )
66-
67- previousStep7 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] ]
68- currentStep7 = [ 1 , 1 , 3 , 4 , 2 ]
69- expectAnswerStep7 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] ]
70- it ( 'deveria retornar 4' , ( ) => {
71- const resp = memoria ( previousStep7 , currentStep7 )
72- expect ( resp ) . toStrictEqual ( expectAnswerStep7 )
15+ it ( 'Deveria retornar 1 se o número no visor do segundo passo é 4, a posição pressionada no passo 1 foi a terceira posição e o número que está na terceira posição do estágio atual é 1' , ( ) => {
16+ previousSteps = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] ]
17+ currentStep = [ 4 , 3 , 4 , 1 , 2 ]
18+ expectAnswerStep = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 1 ] ]
19+ const resp = memoria ( previousSteps , currentStep )
20+ expect ( resp ) . toStrictEqual ( expectAnswerStep )
7321 } )
7422 } )
7523
7624 describe ( 'passo 3' , ( ) => {
77- let answer
78-
79- previousStep8 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] ]
80- currentStep8 = [ 3 , 4 , 1 , 3 , 2 ]
81- expectAnswerStep8 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 4 , 1 , 3 , 2 , 3 ] ]
82- it ( 'deveria retornar 3' , ( ) => {
83- const resp = memoria ( previousStep8 , currentStep8 )
84- expect ( resp ) . toStrictEqual ( expectAnswerStep8 )
85- } )
86-
87- previousStep9 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] ]
88- currentStep9 = [ 4 , 3 , 4 , 1 , 2 ]
89- expectAnswerStep9 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] , [ 4 , 3 , 4 , 1 , 2 , 4 ] ]
90- it ( 'deveria retornar 4' , ( ) => {
91- const resp = memoria ( previousStep9 , currentStep9 )
92- expect ( resp ) . toStrictEqual ( expectAnswerStep9 )
93- } )
94-
95- previousStep10 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] ]
96- currentStep10 = [ 1 , 1 , 3 , 4 , 2 ]
97- expectAnswerStep10 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 1 , 1 , 3 , 4 , 2 , 3 ] ]
98- it ( 'deveria retornar 3' , ( ) => {
99- const resp = memoria ( previousStep10 , currentStep10 )
100- expect ( resp ) . toStrictEqual ( expectAnswerStep10 )
101- } )
102-
103- previousStep11 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] ]
104- currentStep11 = [ 2 , 3 , 4 , 1 , 2 ]
105- expectAnswerStep11 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] , [ 2 , 3 , 4 , 1 , 2 , 2 ] ]
106- it ( 'deveria retornar 2' , ( ) => {
107- const resp = memoria ( previousStep11 , currentStep11 )
108- expect ( resp ) . toStrictEqual ( expectAnswerStep11 )
25+ it ( 'Deveria retornar 4 se o número no visor do terceiro passo é 1, o número do botão pressionado no segundo passo foi 4' , ( ) => {
26+ previousSteps = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] ]
27+ currentStep = [ 1 , 3 , 4 , 1 , 2 ]
28+ expectAnswerStep = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] , [ 1 , 3 , 4 , 1 , 2 , 4 ] ]
29+ const resp = memoria ( previousSteps , currentStep )
30+ expect ( resp ) . toStrictEqual ( expectAnswerStep )
10931 } )
11032 } )
11133
11234 describe ( 'passo 4' , ( ) => {
113- let answer
114-
115- previousStep12 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 4 , 1 , 3 , 2 , 3 ] ]
116- currentStep12 = [ 4 , 3 , 4 , 1 , 2 ]
117- expectAnswerStep12 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] ]
118- it ( 'deveria retornar 3' , ( ) => {
119- const resp = memoria ( previousStep12 , currentStep12 )
120- expect ( resp ) . toStrictEqual ( expectAnswerStep12 )
121- } )
122-
123- previousStep13 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] , [ 4 , 3 , 4 , 1 , 2 , 4 ] ]
124- currentStep13 = [ 1 , 1 , 3 , 4 , 2 ]
125- expectAnswerStep13 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] , [ 4 , 3 , 4 , 1 , 2 , 4 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] ]
126- it ( 'deveria retornar 4' , ( ) => {
127- const resp = memoria ( previousStep13 , currentStep13 )
128- expect ( resp ) . toStrictEqual ( expectAnswerStep13 )
129- } )
130-
131- previousStep14 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 1 , 1 , 3 , 4 , 2 , 3 ] ]
132- currentStep14 = [ 2 , 3 , 4 , 1 , 2 ]
133- expectAnswerStep14 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] ]
134- it ( 'deveria retornar 3' , ( ) => {
135- const resp = memoria ( previousStep14 , currentStep14 )
136- expect ( resp ) . toStrictEqual ( expectAnswerStep14 )
137- } )
138-
139- previousStep15 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] , [ 2 , 3 , 4 , 1 , 2 , 2 ] ]
140- currentStep15 = [ 3 , 4 , 1 , 3 , 2 ]
141- expectAnswerStep15 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] , [ 2 , 3 , 4 , 1 , 2 , 2 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] ]
142- it ( 'deveria retornar 4' , ( ) => {
143- const resp = memoria ( previousStep15 , currentStep15 )
144- expect ( resp ) . toStrictEqual ( expectAnswerStep15 )
35+ it ( 'Deveria retornar 1 se o número no visor do quarto passo é 3, a posição pressionada no passo 2 foi a primeira posição e o número que está na primeira posição do estágio atual é 1' , ( ) => {
36+ previousSteps = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 1 , 1 , 3 , 4 , 2 , 3 ] ]
37+ currentStep = [ 3 , 1 , 3 , 4 , 2 ]
38+ expectAnswerStep = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 3 , 1 , 3 , 4 , 2 , 1 ] ]
39+ const resp = memoria ( previousSteps , currentStep )
40+ expect ( resp ) . toStrictEqual ( expectAnswerStep )
14541 } )
14642 } )
14743
14844 describe ( 'passo 5' , ( ) => {
149- let answer
150-
151- previousStep16 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] ]
152- currentStep16 = [ 1 , 1 , 3 , 4 , 2 ]
153- expectAnswerStep16 = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 1 , 1 , 3 , 4 , 2 , 3 ] ]
154- it ( 'deveria retornar 3' , ( ) => {
155- const resp = memoria ( previousStep16 , currentStep16 )
156- expect ( resp ) . toStrictEqual ( expectAnswerStep16 )
157- } )
158-
159- previousStep17 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] , [ 4 , 3 , 4 , 1 , 2 , 4 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] ]
160- currentStep17 = [ 2 , 3 , 4 , 1 , 2 ]
161- expectAnswerStep17 = [ [ 2 , 3 , 4 , 1 , 2 , 4 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] , [ 4 , 3 , 4 , 1 , 2 , 4 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] , [ 2 , 3 , 4 , 1 , 2 , 4 ] ]
162- it ( 'deveria retornar 4' , ( ) => {
163- const resp = memoria ( previousStep17 , currentStep17 )
164- expect ( resp ) . toStrictEqual ( expectAnswerStep17 )
45+ it ( 'Deveria retornar 3 se o número no visor do quinto passo é 3, o número do botão pressionado no quarto passo foi 3' , ( ) => {
46+ previousSteps = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] ]
47+ currentStep = [ 3 , 1 , 3 , 4 , 2 ]
48+ expectAnswerStep = [ [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 1 , 3 , 4 , 2 , 3 ] ]
49+ const resp = memoria ( previousSteps , currentStep )
50+ expect ( resp ) . toStrictEqual ( expectAnswerStep )
16551 } )
166-
167- previousStep18 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] ]
168- currentStep18 = [ 3 , 4 , 1 , 3 , 2 ]
169- expectAnswerStep18 = [ [ 3 , 4 , 1 , 3 , 2 , 3 ] , [ 4 , 3 , 4 , 1 , 2 , 3 ] , [ 1 , 1 , 3 , 4 , 2 , 3 ] , [ 2 , 3 , 4 , 1 , 2 , 3 ] , [ 3 , 4 , 1 , 3 , 2 , 3 ] ]
170- it ( 'deveria retornar 3' , ( ) => {
171- const resp = memoria ( previousStep18 , currentStep18 )
172- expect ( resp ) . toStrictEqual ( expectAnswerStep18 )
173- } )
174-
175- previousStep19 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] , [ 2 , 3 , 4 , 1 , 2 , 2 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] ]
176- currentStep19 = [ 4 , 3 , 4 , 1 , 2 ]
177- expectAnswerStep19 = [ [ 4 , 3 , 4 , 1 , 2 , 2 ] , [ 1 , 1 , 3 , 4 , 2 , 4 ] , [ 2 , 3 , 4 , 1 , 2 , 2 ] , [ 3 , 4 , 1 , 3 , 2 , 4 ] , [ 4 , 3 , 4 , 1 , 2 , 2 ] ]
178- it ( 'deveria retornar 2' , ( ) => {
179- const resp = memoria ( previousStep19 , currentStep19 )
180- expect ( resp ) . toStrictEqual ( expectAnswerStep19 )
52+ } )
53+ describe ( 'error' , ( ) => {
54+ it ( 'Deveria lançar uma exceção quando o passo atual não estiver completo (número no visor mais os quatro números nos botões' , ( ) => {
55+ previousSteps = [ ]
56+ currentStep = [ 1 , 1 , 3 , 2 ]
57+ expect ( ( ) => {
58+ memoria ( previousSteps , currentStep )
59+ } ) . toThrowError ( 'CURRENT_STEP_INCOMPLETED' )
18160 } )
18261 } )
18362} )
0 commit comments