@@ -52,7 +52,7 @@ def teste_adicionar_passaro(self):
5252
5353 def teste_acabou_sem_porcos (self ):
5454 fase = Fase ()
55- self .assertTrue (fase .acabou (0 ))
55+ self .assertTrue (fase .acabou ())
5656
5757 def teste_acabou_com_porcos_e_passaros (self ):
5858 fase = Fase ()
@@ -61,60 +61,52 @@ def teste_acabou_com_porcos_e_passaros(self):
6161 fase .adicionar_porco (* porcos )
6262 fase .adicionar_passaro (* passaros )
6363
64- self .assertFalse (fase .acabou (0 ))
65- self .assertFalse (fase .acabou (2.9 ))
66- self .assertFalse (fase .acabou (3 ))
64+ self .assertFalse (fase .acabou ())
6765
68- # colidingo cada passaro com um porco no tempo 3
66+ # colidindo cada passaro com um porco no tempo 3
6967 for passaro , porco in zip (passaros , porcos ):
7068 passaro .colidir (porco , 3 )
7169
72- self .assertFalse (fase .acabou (0 ))
73- self .assertFalse (fase .acabou (2.9 ))
74- self .assertTrue (fase .acabou (3 ))
70+ self .assertTrue (fase .acabou ())
7571
7672 fase .adicionar_obstaculo (Obstaculo ())
77- self .assertTrue (fase .acabou (3 ), 'Obstáculo não interfere no fim do jogo' )
73+ self .assertTrue (fase .acabou (), 'Obstáculo não interfere no fim do jogo' )
7874
7975 fase .adicionar_porco (Porco ())
80- self .assertTrue (fase .acabou (3 ), 'Com Porco ativo e sem pássaro para lançar, o jogo deveria acabar' )
76+ self .assertTrue (fase .acabou (), 'Com Porco ativo e sem pássaro para lançar, o jogo deveria acabar' )
8177
8278 fase .adicionar_passaro (PassaroAmarelo ())
83- self .assertFalse (fase .acabou (3 ), 'Com Porco ativo e com pássaro para lançar, o jogo não deveria acabar' )
79+ self .assertFalse (fase .acabou (), 'Com Porco ativo e com pássaro para lançar, o jogo não deveria acabar' )
8480
8581 def teste_status (self ):
8682 fase = Fase ()
8783 porcos = [Porco (1 , 1 ) for i in range (2 )]
8884 passaros = [PassaroAmarelo (1 , 1 ) for i in range (2 )]
8985 fase .adicionar_porco (* porcos )
9086 fase .adicionar_passaro (* passaros )
91- self .assertEqual ('Jogo em andamento.' , fase .status (0 ))
92- self .assertEqual ('Jogo em andamento.' , fase .status (2.9 ))
93- self .assertEqual ('Jogo em andamento.' , fase .status (3 ))
87+ self .assertEqual ('Jogo em andamento.' , fase .status ())
9488
9589 for passaro , porco in zip (passaros , porcos ):
9690 passaro .colidir (porco , 3 )
9791
98- self .assertEqual ('Jogo em andamento.' , fase .status (0 ))
99- self .assertEqual ('Jogo em andamento.' , fase .status (2.9 ))
100- self .assertEqual ('Jogo em encerrado. Você ganhou!' , fase .status (3 ),
92+ self .assertEqual ('Jogo em encerrado. Você ganhou!' , fase .status (),
10193 'Sem porcos ativos o jogo deveria terminar com vitória' )
10294
10395 fase .adicionar_obstaculo (Obstaculo ())
104- self .assertEqual ('Jogo em encerrado. Você ganhou!' , fase .status (3 ),
96+ self .assertEqual ('Jogo em encerrado. Você ganhou!' , fase .status (),
10597 'Obstáculo não interfere para definir vitória' )
10698
10799 porco = Porco ()
108100 fase .adicionar_porco (porco )
109- self .assertEqual ('Jogo em encerrado. Você perdeu!' , fase .status (3 ),
101+ self .assertEqual ('Jogo em encerrado. Você perdeu!' , fase .status (),
110102 'Com Porco ativo e sem pássaro para lançar, o jogo deveria acabar em derrota' )
111103
112104 fase .adicionar_passaro (PassaroAmarelo ())
113- self .assertEqual ('Jogo em andamento.' , fase .status (3 ),
105+ self .assertEqual ('Jogo em andamento.' , fase .status (),
114106 'Com Porco ativo e com pássaro para lançar, o jogo não deveria acabar' )
115107
116108 porco .colidir (porco , 3 )
117- self .assertEqual ('Jogo em encerrado. Você ganhou!' , fase .status (3 ),
109+ self .assertEqual ('Jogo em encerrado. Você ganhou!' , fase .status (),
118110 'Sem porco ativo, o jogo deveria acabar com vitória' )
119111
120112 def teste_lancar_passaro_sem_erro_quando_nao_existe_passaro (self ):
@@ -145,8 +137,8 @@ def teste_intervalo_de_colisao_padrão(self):
145137 porco = Porco (2 , 2 )
146138 fase .adicionar_porco (porco )
147139 fase .calcular_pontos (0 )
148- self .assertEqual (DESTRUIDO , passaro .status ( 0 ) )
149- self .assertEqual (DESTRUIDO , porco .status ( 0 ) )
140+ self .assertEqual (DESTRUIDO , passaro .status )
141+ self .assertEqual (DESTRUIDO , porco .status )
150142
151143 def teste_intervalo_de_colisao_nao_padrao (self ):
152144 '''
@@ -158,53 +150,54 @@ def teste_intervalo_de_colisao_nao_padrao(self):
158150 porco = Porco (31 , 31 )
159151 fase .adicionar_porco (porco )
160152 fase .calcular_pontos (0 )
161- self .assertEqual (DESTRUIDO , passaro .status ( 0 ) )
162- self .assertEqual (DESTRUIDO , porco .status ( 0 ) )
153+ self .assertEqual (DESTRUIDO , passaro .status )
154+ self .assertEqual (DESTRUIDO , porco .status )
163155
164156 def teste_calcular_pontos (self ):
165157 fase_exemplo = criar_fase_exemplo ()
166158 expected = [Ponto (3 , 3 , 'V' ), Ponto (3 , 3 , 'A' ), Ponto (3 , 3 , 'A' ), Ponto (31 , 10 , 'O' ), Ponto (78 , 1 , '@' ),
167159 Ponto (70 , 1 , '@' )]
168160 self .assertListEqual (expected , fase_exemplo .calcular_pontos (0 ))
169161
170- expected = [Ponto (31 , 11 , 'v' ), Ponto (17 , 25 , 'A' ), Ponto (3 , 3 , 'A' ), Ponto (31 , 10 , ' ' ), Ponto (78 , 1 , '@' ),
162+ fase_exemplo .lancar (45 , 1 )
163+
164+ # i variando de 1 até 2.9
165+ for i in range (100 , 300 , 1 ):
166+ fase_exemplo .calcular_pontos (i / 100 )
167+
168+ fase_exemplo .lancar (63 , 3 )
169+
170+ # i variando de 3 até 3.9
171+ for i in range (300 , 400 , 1 ):
172+ fase_exemplo .calcular_pontos (i / 100 )
173+
174+ fase_exemplo .lancar (23 , 4 )
175+
176+ expected = [Ponto (32 , 11 , 'v' ), Ponto (17 , 25 , 'A' ), Ponto (3 , 3 , 'A' ), Ponto (31 , 10 , ' ' ), Ponto (78 , 1 , '@' ),
171177 Ponto (70 , 1 , '@' )]
178+
172179 self .assertListEqual (expected , fase_exemplo .calcular_pontos (4 ))
173180
174- expected = [ Ponto ( 31 , 11 , 'v' ), Ponto ( 57 , 30 , 'A' ), Ponto ( 69 , 2 , 'a' ), Ponto ( 31 , 10 , ' ' ), Ponto ( 78 , 1 , '@' ),
175- Ponto ( 70 , 1 , '+' )]
176- self . assertListEqual ( expected , fase_exemplo .calcular_pontos (7 ) )
181+ # i variando de 4 até 6.9
182+ for i in range ( 400 , 700 , 1 ):
183+ fase_exemplo .calcular_pontos (i / 100 )
177184
178- expected = [Ponto (31 , 11 , 'v' ), Ponto (77 , 2 , 'a ' ), Ponto (69 , 2 , 'a' ), Ponto (31 , 10 , ' ' ), Ponto (78 , 1 , '+ ' ),
185+ expected = [Ponto (32 , 11 , 'v' ), Ponto (57 , 30 , 'A ' ), Ponto (70 , 2 , 'a' ), Ponto (31 , 10 , ' ' ), Ponto (78 , 1 , '@ ' ),
179186 Ponto (70 , 1 , '+' )]
180- self .assertListEqual (expected , fase_exemplo .calcular_pontos (8.5 ))
181187
182- self .assertFalse (fase_exemplo .acabou (8.3 ))
183- self .assertTrue (fase_exemplo .acabou (8.5 ))
188+ self .assertListEqual (expected , fase_exemplo .calcular_pontos (7 ))
184189
185- def teste_resetar (self ):
186- 'Testa se o método resetar de faze chama o método resetar de todos atores'
187- fase_exemplo = criar_fase_exemplo ()
188- atores = list (chain (fase_exemplo ._passaros , fase_exemplo ._obstaculos , fase_exemplo ._porcos ))
189- fase_exemplo .calcular_pontos (0 )
190+ # i variando de 7 até 8.49
191+ for i in range (700 , 849 , 1 ):
192+ fase_exemplo .calcular_pontos (i / 100 )
193+ print (fase_exemplo .calcular_pontos (8.5 ))
190194
191- fase_exemplo .calcular_pontos (4 )
192195
193- fase_exemplo .calcular_pontos (7 )
194- fase_exemplo .calcular_pontos (8.5 )
196+ expected = [Ponto (32 ,11 ,'v' ), Ponto (77 ,0 ,'a' ), Ponto (70 ,2 ,'a' ), Ponto (31 ,10 ,' ' ), Ponto (78 ,1 ,'+' ), Ponto (70 ,1 ,'+' )]
195197
196- self .assertFalse (fase_exemplo .acabou (8.3 ))
197- self .assertTrue (fase_exemplo .acabou (8.5 ))
198- # certificando que todos atore foram destruidos
199- for a in atores :
200- self .assertEqual (DESTRUIDO , a .status (8.5 ))
201- for p in fase_exemplo ._passaros :
202- self .assertTrue (p .foi_lancado (), 'Todos pássaros foram lançados' )
203- fase_exemplo .resetar ()
204- for a in atores :
205- self .assertEqual (ATIVO , a .status (8.5 ), 'Após resetar atore devem voltar a ficar ativos' )
206- for p in fase_exemplo ._passaros :
207- self .assertFalse (p .foi_lancado (), 'Nenhum pássaro foi lançado' )
198+ self .assertListEqual (expected , fase_exemplo .calcular_pontos (8.5 ))
199+
200+ self .assertTrue (fase_exemplo .acabou ())
208201
209202
210203def criar_fase_exemplo ():
@@ -217,12 +210,6 @@ def criar_fase_exemplo():
217210 fase_exemplo .adicionar_porco (* porcos )
218211 fase_exemplo .adicionar_obstaculo (* obstaculos )
219212
220- fase_exemplo .lancar (45 , 1 )
221- fase_exemplo .lancar (63 , 3 )
222- fase_exemplo .lancar (23 , 4 )
223-
224- for i in range (86 ):
225- fase_exemplo .calcular_pontos (i / 10 )
226213 return fase_exemplo
227214
228215
0 commit comments