public void NaoPermiteNovosLancesDadoLeilaoFinalizado(int qtdeEsperada, double[] ofertas) { IModalidadeAvaliacao modalidade = new MaiorLance(); var leilao = new Leilao("Van Gogh", modalidade); var fulano = new Interessada("Fulano", leilao); var maria = new Interessada("Maria", leilao); leilao.IniciaPregao(); for (int i = 0; i < ofertas.Length; i++) { var valor = ofertas[i]; if ((i % 2) == 0) { leilao.RecebeLance(fulano, valor); } else { leilao.RecebeLance(maria, valor); } } leilao.TerminaPregao(); leilao.RecebeLance(fulano, 1000); var qtdeObtida = leilao.Lances.Count(); Assert.Equal(qtdeEsperada, qtdeObtida); }
private static void RetornaMaiorValorDadoLeilaoComPeloMenosUmLance(double valorEsperado, double[] ofertas) { IModalidadeAvaliacao modalidade = new MaiorLance(); var leilao = new Leilao("Van Gogh", modalidade); var fulano = new Interessada("Fulano", leilao); var maria = new Interessada("Maria", leilao); leilao.IniciaPregao(); for (int i = 0; i < ofertas.Length; i++) { var valor = ofertas[i]; if ((i % 2) == 0) { leilao.RecebeLance(fulano, valor); } else { leilao.RecebeLance(maria, valor); } } leilao.TerminaPregao(); var valorObtido = leilao.Ganhador.Valor; Assert.Equal(valorEsperado, valorObtido); }
public void QtdePermaneceZeroDadoQuePregaoNaoFoiIniciado(double[] ofertas) { IModalidadeAvaliacao modalidade = new MaiorLance(); var leilao = new Leilao("Van Gogh", modalidade); var fulano = new Interessada("Fulano de Tal", leilao); foreach (var valor in ofertas) { leilao.RecebeLance(fulano, valor); } Assert.Empty(leilao.Lances); }
public void RetornaZeroDadoLeilaoSemLances() { IModalidadeAvaliacao modalidade = new MaiorLance(); var leilao = new Leilao("Van Gogh", modalidade); leilao.IniciaPregao(); leilao.TerminaPregao(); var valorEsperado = 0; var valorObtido = leilao.Ganhador.Valor; Assert.Equal(valorEsperado, valorObtido); }
public void LancaInvalidOperationExceptionDadoPregaoNaoIniciado() { IModalidadeAvaliacao modalidade = new MaiorLance(); var leilao = new Leilao("Van Gogh", modalidade); var excecaoObtida = Assert.Throws <System.InvalidOperationException>( () => leilao.TerminaPregao() ); var msgEsperada = "Não é possível terminar o pregão sem que ele tenha começado. Para isso, utilize o método IniciePregao()"; Assert.Equal(msgEsperada, excecaoObtida.Message); }
private static void LeilaoComApenasUmLance() { IModalidadeAvaliacao modalidade = new MaiorLance(); var leilao = new Leilao("Van Gogh", modalidade); var fulano = new Interessada("Fulano", leilao); leilao.RecebeLance(fulano, 800); leilao.TerminaPregao(); var valorEsperado = 800; var valorObtido = leilao.Ganhador.Valor; Verifica(valorEsperado, valorObtido); }
public void NaoAceitaProximoLanceDadoMesmoClienteRealizouUltimoLance() { IModalidadeAvaliacao modalidade = new MaiorLance(); var leilao = new Leilao("Van Gogh", modalidade); var fulano = new Interessada("Fulano de Tal", leilao); leilao.IniciaPregao(); leilao.RecebeLance(fulano, 800); leilao.RecebeLance(fulano, 1000); leilao.TerminaPregao(); var qtdeEsperada = 1; var qtdeObtida = leilao.Lances.Count(); Assert.Equal(qtdeEsperada, qtdeObtida); }