public void NaoPodeLanceMenorOuIgualZero() { Leilao leiao = new CriadorDeLeilao() .Para("Playstatin 4 Pro") .Lance(joao, 0) .Constroi(); }
public void TesteNaoDobrarSeNaoHouverUltimoLance() { Leilao leilao = new CriadorDeLeilao().Para("PS4 Usado") .Constroi(); Assert.AreEqual(0, leilao.Lances.Count); }
public void NaoDeveAceitarMaisQue5LancesDoMesmoUsuario() { Leilao leilao = new CriadorDeLeilao().Para("iMac 4k") .Lance(stevejobs, 2000.0) .Lance(billgates, 3000.0) .Lance(stevejobs, 4000.0) .Lance(billgates, 5000.0) .Lance(stevejobs, 6000.0) .Lance(billgates, 7000.0) .Lance(stevejobs, 8000.0) .Lance(billgates, 9000.0) .Lance(stevejobs, 10000.0) .Lance(billgates, 11000.0) //Deve ser ignorado .Lance(stevejobs, 12000.0) .Constroi(); Assert.AreEqual(10, leilao.Lances.Count); var ultimo = leilao.Lances.Count - 1; Lance ultimoLance = leilao.Lances[ultimo]; Assert.AreEqual(11000, ultimoLance.Valor, 0.00001); }
public void NaoDeveAceitarMaisDoQue5LancesDoMesmoUsuario() { Leilao leilao = new CriadorDeLeilao().Para("Raspberry Pi 3") .Lance(steeveJobs, 2000.00) .Lance(billGates, 2500.00) .Lance(steeveJobs, 3000.00) .Lance(billGates, 3500.00) .Lance(steeveJobs, 4000.00) .Lance(billGates, 4500.00) .Lance(steeveJobs, 5000.00) .Lance(billGates, 5500.00) .Lance(steeveJobs, 6000.00) .Lance(billGates, 6500.00) .Constroi(); //tem que ignorar leilao.Propoe(new Lance(steeveJobs, 9999.99)); Assert.AreEqual(10, leilao.Lances.Count); var ultimo = leilao.Lances.Count - 1; var ultimoLance = leilao.Lances[ultimo]; Assert.AreEqual(6500, ultimoLance.Valor, 0.00001); }
public void TesteRecebeUmLance() { Leilao leilao = new CriadorDeLeilao().Para("Macbook Pro TouchBar") .Lance(stevejobs, 9000.0) .Constroi(); Assert.AreEqual(1, leilao.Lances.Count); }
public void DeveReceberUmLance() { Leilao leilao = new CriadorDeLeilao().Para("Mackbook pro 15") .Lance(steeveJobs, 15000.00) .Constroi(); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(15000.00, leilao.Lances[0].Valor, 0.00001); }
public void NaoDeveAvaliarLeilaoSemLances() { Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo").Constroi(); // executando a acao e verificando se é disparada a exceção com a correta mensagem. Assert.Throws(Is.TypeOf <Exception>() .And.Message.EqualTo("Não é possível avaliar um leilão sem nenhum lance"), delegate { leiloeiro.Avalia(leilao); }); }
public void NaoDeveAceitarDoisLancesSeguidosDoMesmoUsuario() { Leilao leilao = new CriadorDeLeilao().Para("Macbook Pro TouchBar") .Lance(stevejobs, 14000.0) .Lance(stevejobs, 9000.0) .Constroi(); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(14000, leilao.Lances[0].Valor); }
public void DobrarUltimoLanceDoUsuarioSemLances() { Leilao leilao = new CriadorDeLeilao().Para("Mackbook pro 15") .Lance(steeveWonziak, 2000.00) .Constroi(); leilao.DobrarLance(steeveJobs); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(2000.00, leilao.Lances[leilao.Lances.Count - 1].Valor, 0.00001); }
public void NaoDeveAceitarDoisLancesSeguidosDoMesmoUsuario() { Leilao leilao = new CriadorDeLeilao().Para("Mackbook pro 15") .Lance(steeveJobs, 2000.00) .Lance(steeveJobs, 3000.00) .Constroi(); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(2000.00, leilao.Lances[0].Valor, 0.00001); Assert.AreEqual(2000.00, leilao.Lances[0].Valor, 0.00001); }
public void DeveDevolverExceptionComLanceComValorZero() { Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo") .Lance(joao, 0) .Constroi(); // executando a acao e verificando se é disparada a exceção com a correta mensagem. Assert.Throws(Is.TypeOf <ArgumentException>() .And.Message.EqualTo("O valor de um lance não pode ser igual ou menor que 0."), delegate { leiloeiro.Avalia(leilao); }); }
public void TesteRecebeVariosLances() { Leilao leilao = new CriadorDeLeilao().Para("Macbook Pro TouchBar 15") .Lance(stevejobs, 9000.0) .Lance(billgates, 13000.0) .Constroi(); Assert.AreEqual(2, leilao.Lances.Count); Assert.AreEqual(9000, leilao.Lances[0].Valor); Assert.AreEqual(13000, leilao.Lances[1].Valor); }
public void NaoDeveAceitarDoisLancesSeguidosDoMesmoUsuario() { Leilao leilao = new CriadorDeLeilao() .Para("Macbook Pro 15") .Lance(jobs, 2000) .Lance(jobs, 3000) .Constroi(); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(2000, leilao.Lances.FirstOrDefault().Valor, 0.0001); }
public void DeveDobrarOLance() { Leilao leilao = new CriadorDeLeilao() .Para("Macbook Pro 15") .Lance(jobs, 2000) .Lance(gates, 3000) .Constroi(); leilao.DobraLance(jobs); Assert.AreEqual(6000, leilao.ultimoLanceDado().Valor, 0.00001); }
public void DeveReceberVariosLances() { Leilao leilao = new CriadorDeLeilao() .Para("Macbook Pro 15") .Lance(jobs, 2000) .Lance(woz, 3000) .Constroi(); Assert.AreEqual(2, leilao.Lances.Count); Assert.AreEqual(2000, leilao.Lances.FirstOrDefault().Valor, 0.0001); Assert.AreEqual(3000, leilao.Lances[1].Valor, 0.0001); }
public void DeveReceberVariosLances() { // cenario: 3 lances em ordem crescente Leilao leilao = new CriadorDeLeilao().Para("Mackbook pro 15") .Lance(steeveJobs, 2000.00) .Lance(steeveWonziak, 3000.00) .Constroi(); Assert.AreEqual(2, leilao.Lances.Count); Assert.AreEqual(2000.00, leilao.Lances[0].Valor, 0.00001); Assert.AreEqual(3000.00, leilao.Lances[1].Valor, 0.00001); }
public void DeveReceberUmLance() { Leilao leilao = new CriadorDeLeilao(). Para("Macbook Pro 15") .Constroi(); Assert.AreEqual(0, leilao.Lances.Count); leilao.Propoe(new Lance(jobs, 2000)); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(2000, leilao.Lances.FirstOrDefault().Valor, 0.0001); }
public void TesteDobrarLance() { Usuario alex = new Usuario("Alex"); Usuario joao = new Usuario("João"); Leilao leilao = new CriadorDeLeilao().Para("PS4 Novo") .Lance(alex, 1000.0) .Lance(joao, 1500.0) .Constroi(); leilao.DobraLance(alex); Assert.AreEqual(2000, leilao.Lances[2].Valor); }
public void DeveDevolverTodosLancesCasoNaoHajaNoMinimo3() { Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo") .Lance(joao, 300.00) .Lance(mario, 415.00) .Constroi(); // executando a acao leiloeiro.Avalia(leilao); var maiores = leiloeiro.TresMaiores; // comparando a saida com o esperado Assert.AreEqual(2, leiloeiro.TresMaiores.Count); Assert.AreEqual(415, maiores[0].Valor, 0.00001); Assert.AreEqual(300, maiores[1].Valor, 0.00001); }
public void DeveCalcularMediaDosLances() { Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo") .Lance(maria, 5.00) .Lance(joao, 4.00) .Lance(jose, 6.00) .Constroi(); // executando a acao leiloeiro.Avalia(leilao); // comparando a saida com o esperado double mediaEsperada = 5; Assert.AreEqual(mediaEsperada, leiloeiro.LanceMedio, 0.0001); }
public void DeveEntenderLancesEmOrdemCrescente() { Leilao leilao = new CriadorDeLeilao().Para("Xbox 360") .Lance(maria, 250.00) .Lance(joao, 300.00) .Lance(jose, 400.00) .Constroi(); // executando a acao leiloeiro.Avalia(leilao); // comparando a saida com o esperado double maiorEsperado = 400; double menorEsperado = 250; Assert.AreEqual(maiorEsperado, leiloeiro.MaiorLance, 0.0001); Assert.AreEqual(menorEsperado, leiloeiro.MenorLance, 0.0001); }
public void DeveEncontrarOsTresMaioresLances() { Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo") .Lance(maria, 250.00) .Lance(joao, 300.00) .Lance(jose, 400.00) .Lance(joao, 415.00) .Constroi(); // executando a acao leiloeiro.Avalia(leilao); var maiores = leiloeiro.TresMaiores; // comparando a saida com o esperado Assert.AreEqual(3, leiloeiro.TresMaiores.Count); Assert.AreEqual(415, maiores[0].Valor, 0.00001); Assert.AreEqual(400, maiores[1].Valor, 0.00001); Assert.AreEqual(300, maiores[2].Valor, 0.00001); }
public void NaoDeveAceitarMaisDoQue5LancesDeUmMesmoUsuario() { Leilao leilao = new CriadorDeLeilao() .Para("Macbook Pro 15") .Lance(jobs, 2000) .Lance(gates, 3000) .Lance(jobs, 4000) .Lance(gates, 5000) .Lance(jobs, 6000) .Lance(gates, 7000) .Lance(jobs, 8000) .Lance(gates, 9000) .Lance(jobs, 10000) .Lance(gates, 11000) .Lance(jobs, 12000) // deve ser ignorado .Constroi(); Assert.AreEqual(10, leilao.Lances.Count); var ultimo = leilao.Lances.Count - 1; Lance ultimoLance = leilao.Lances[ultimo]; Assert.AreEqual(11000, ultimoLance.Valor, 0.00001); }