def teste_colisao(self): passaro_vermelho = PassaroVermelho(1, 1) passaro_vermelho.lancar(45, 2) # passaro lancado a 45 graus no tempo 2 segundos # Código de geração de testes porco = Porco(14, 10) passaro_vermelho.calcular_posicao(2.89) # tempo exato quanto o passário chega em 14,10 passaro_vermelho.colidir(porco, 2.89) self.assertEqual(DESTRUIDO, passaro_vermelho.status(2.89)) # Deve ficar parado onde colidiu para qualquer tempo maior que o de colisão self.assertTupleEqual((14, 10), passaro_vermelho.calcular_posicao(2.9)) self.assertTupleEqual((14, 10), passaro_vermelho.calcular_posicao(1000))
def teste_posicao_antes_do_lancamento(self): passaro_vermelho = PassaroVermelho(1, 1) passaro_vermelho.lancar(90, 2) # passaro lancado a 90 graus no tempo 2 segundos # for t in range(20): t /= 10 self.assertEqual((1, 1), passaro_vermelho.calcular_posicao(t), 'Não deveria se mover no tempo %s < 2 segundtos' % t)
def teste_colisao(self): passaro_vermelho = PassaroVermelho(1, 1) passaro_vermelho.lancar(45, 2) # passaro lancado a 45 graus no tempo 2 segundos porco = Porco(14, 10) x_calculado, y_calculado = passaro_vermelho.calcular_posicao(2.89) self.assertEqual(14, x_calculado) self.assertEqual(10, y_calculado) passaro_vermelho.colidir(porco, 2.89) self.assertEqual(DESTRUIDO, passaro_vermelho.status(2.89)) # Deve ficar parado onde colidiu para qualquer tempo maior ou igual que o de colisão x_calculado, y_calculado = passaro_vermelho.calcular_posicao(2.89) self.assertEqual(14, x_calculado) self.assertEqual(10, y_calculado) x_calculado, y_calculado = passaro_vermelho.calcular_posicao(4) self.assertEqual(14, x_calculado) self.assertEqual(10, y_calculado)
def teste_posicao_antes_do_lancamento(self): 'Método que testa que o pássaro fica parado antes do tempo de lançamento' passaro_vermelho = PassaroVermelho(1, 1) passaro_vermelho.lancar( 90, 2) # passaro lancado a 90 graus no tempo 2 segundos # for t in range(20): t /= 10 self.assertEqual( (1, 1), passaro_vermelho.calcular_posicao(t), 'Não deveria se mover no tempo %s < 2 segundtos' % t)
def teste_colisao(self): passaro_vermelho = PassaroVermelho(1, 1) passaro_vermelho.lancar( 45, 2) # passaro lancado a 45 graus no tempo 2 segundos porco = Porco(14, 10) x_calculado, y_calculado = passaro_vermelho.calcular_posicao(2.89) self.assertEqual(14, x_calculado) self.assertEqual(10, y_calculado) passaro_vermelho.colidir(porco, 2.89) self.assertEqual(DESTRUIDO, passaro_vermelho.status(2.89)) # Deve ficar parado onde colidiu para qualquer tempo maior ou igual que o de colisão x_calculado, y_calculado = passaro_vermelho.calcular_posicao(2.89) self.assertEqual(14, x_calculado) self.assertEqual(10, y_calculado) x_calculado, y_calculado = passaro_vermelho.calcular_posicao(4) self.assertEqual(14, x_calculado) self.assertEqual(10, y_calculado)