Bom dia.
Estou com uma dúvida em relação ao
- test_nao_deve_permitir_propor_um_lance_em_ordem_decrescente De acordo com a programação do caso de teste, e da classe de teste temos:
def test_nao_deve_permitir_propor_um_lance_em_ordem_decrescente(self):
with self.assertRaises(ValueError):
self.leilao.propoe(self.lance_do_paul) #350 <= valor do lance de Paul
self.leilao.propoe(self.lance_do_yuri) #100 <= valor do lance de Yuri
def propoe(self, lance: Lance):
if not self.__lances or self.__lances[-1].usuario != lance.usuario and lance.valor > self.__lances[-1].valor:
if lance.valor > self.maior_lance:
self.maior_lance = lance.valor
if lance.valor < self.menor_lance:
self.menor_lance = lance.valor
self.__lances.append(lance)
else:
raise ValueError('Erro ao propor lance.')
Executando este testcase a execução não está falhando, porém os lances foram dados em ordem decrescente: primeiro 350.0 e depois 100.0
Invertendo a ordem dos lances assim: self.leilao.propoe(self.lance_do_yuri) #100 <= valor do lance de Yuri self.leilao.propoe(self.lance_do_paul) #350 <= valor do lance de Paul
o teste quebra...
No código do professor, está da mesma forma...
O lance do Yuri é 100.0 e do Gui é 150.0 e o teste está passando apesar de primeiro ser feito o lance para o Gui e depois para Yuri.