public void RetornaValorSuperiorMaisProximoDadoLeilaoNessaModalidade( double valorDestino, double valorEsperado, double[] ofertas) { //Arrange var modalidade = new OfertaSuperiorMaisProxima(valorDestino); var leilao = new Leilao("Cama Box com Colchão", modalidade); leilao.Iniciar(); var marina = new Interessado("Marina", leilao); var maria = new Interessado("Maria", leilao); for (int contador = 0; contador < ofertas.Length; contador++) { if ((contador % 2) == 0) { leilao.RecebeLance(marina, ofertas[contador]); } else { leilao.RecebeLance(maria, ofertas[contador]); } } //Act leilao.Finalizar(); //Assert Assert.Equal(valorEsperado, leilao.Ganhador.Valor); }
public void RetornaMaiorValorDadoLeilaoComPeloMenosUmValor( double valorEsperado, double[] valores) { //Arrange var modalidade = new MaiorValor(); var leilao = new Leilao(peca: "Tv Samsung", modalidade); leilao.Iniciar(); var beatriz = new Interessado("Beatriz", leilao); var mario = new Interessado("Mario", leilao); for (int contador = 0; contador < valores.Length; contador++) { if ((contador % 2) == 0) { leilao.RecebeLance(beatriz, valores[contador]); } else { leilao.RecebeLance(mario, valores[contador]); } } //Act leilao.Finalizar(); //Assert Assert.Equal(valorEsperado, leilao.Ganhador.Valor); }
public void NaoAceitaProximoLanceDadoLeilaoFinalizado() { //Arrange var modalidade = new MaiorValor(); var leilao = new Leilao(peca: "Notebook HP", modalidade); var vinicius = new Interessado("Vinicius", leilao); var pamela = new Interessado("Pamela", leilao); leilao.Iniciar(); leilao.RecebeLance(vinicius, 500); leilao.RecebeLance(pamela, 600); leilao.Finalizar(); //Act leilao.RecebeLance(vinicius, 700); //Assert var qtdLancesObtido = leilao.Lances.Count(); var qtdLancesEsperados = 2; Assert.Equal(qtdLancesEsperados, qtdLancesObtido); }
public void RetornaZeroDadoLeilaoSemLances() { //Arrange - Cenários de entrada var modalidade = new MaiorValor(); var leilao = new Leilao(peca: "Notebook HP", modalidade); leilao.Iniciar(); //Act - método sob teste leilao.Finalizar(); //Assert var valorEsperado = 0; var valorObtido = leilao.Ganhador.Valor; Assert.Equal(valorEsperado, valorObtido); }
public void LancaInvalidOperationExceptionDadoLeilaoNaoIniciado() { //Arrange var modalidade = new MaiorValor(); var leilao = new Leilao(peca: "Tv Samsung", modalidade); //Assert var excecaoObtida = Assert.Throws <InvalidOperationException>( //Act () => leilao.Finalizar() ); var msgEsperada = "Não é possível terminar o pregão sem que ele tenha começado. Para isso, utilize o método Iniciar()"; Assert.Equal(msgEsperada, excecaoObtida.Message); }