public void DeveEntenderLancesEmOrdemCrescente() { // cenario: 3 lances em ordem crescente Usuario joao = new Usuario("Joao"); Usuario jose = new Usuario("José"); Usuario maria = new Usuario("Maria"); Leilao leilao = new Leilao("Playstation 3 Novo"); leilao.Propoe(new Lance(maria, 250.0)); leilao.Propoe(new Lance(joao, 300.0)); leilao.Propoe(new Lance(jose, 400.0)); // executando a acao Avaliador leiloeiro = new Avaliador(); 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 NaoDeveAceitarMaisQueCincoLancesDoMesmoUsuarioComODobrar() { var leilao = new Leilao("Impressora HP Deskjet 2540"); var joao = new Usuario("João"); var maria = new Usuario("Maria"); leilao.Propoe(new Lance(joao, 1000)); leilao.Propoe(new Lance(maria, 2000)); leilao.Propoe(new Lance(joao, 3000)); leilao.Propoe(new Lance(maria, 4000)); leilao.Propoe(new Lance(joao, 5000)); leilao.Propoe(new Lance(maria, 6000)); leilao.Propoe(new Lance(joao, 7000)); leilao.Propoe(new Lance(maria, 8000)); leilao.Propoe(new Lance(joao, 9000)); leilao.Propoe(new Lance(maria, 10000)); leilao.DobrarLance(joao); Assert.AreEqual(10, leilao.Lances.Count); Assert.AreEqual(10000, leilao.Lances[9].Valor, 0.0001); }
public void Should_find_three_max_values() { //Given Usuario joao = new Usuario("Joao"); Usuario maria = new Usuario("Maria"); Leilao leilao = new Leilao("Playstation 3 Novo"); leilao.Propoe(new Lance(joao, 100.0)); leilao.Propoe(new Lance(maria, 200.0)); leilao.Propoe(new Lance(joao, 300.0)); leilao.Propoe(new Lance(maria, 400.0)); //When Avaliador leiloeiro = new Avaliador(); leiloeiro.Avalia(leilao); var maiores = leiloeiro.TresMaiores; //Then Assert.Equal(3, maiores.Count); Assert.Equal(400, maiores[0].Valor, 2); Assert.Equal(300, maiores[1].Valor, 2); Assert.Equal(200, maiores[2].Valor, 2); }
public void Should_process_code() { // 1st part: scenario (ARRANGE) Usuario joao = new Usuario("Joao"); Usuario jose = new Usuario("Jose"); Usuario maria = new Usuario("Maria"); Leilao leilao = new Leilao("Playstation 3 Novo"); leilao.Propoe(new Lance(joao, 300.0)); leilao.Propoe(new Lance(jose, 400.0)); leilao.Propoe(new Lance(maria, 250.0)); // 2nd part: ACT Avaliador leiloeiro = new Avaliador(); leiloeiro.Avalia(leilao); // 3rd part: validation (ASSERT) double maiorEsperado = 400; double menorEsperado = 250; double mediaEsperada = 317; Assert.Equal(maiorEsperado, leiloeiro.MaiorLance); Assert.Equal(menorEsperado, leiloeiro.MenorLance); Assert.Equal(mediaEsperada, Math.Ceiling(leiloeiro.MediaLance)); }
public void Should_process_code_with_throws_descending_order() { //Given Usuario joao = new Usuario("Joao"); Usuario maria = new Usuario("Maria"); Leilao leilao = new Leilao("Playstation 3 Novo"); leilao.Propoe(new Lance(joao, 400.0)); leilao.Propoe(new Lance(maria, 300.0)); leilao.Propoe(new Lance(joao, 200.0)); leilao.Propoe(new Lance(maria, 100.0)); //When Avaliador leiloeiro = new Avaliador(); leiloeiro.Avalia(leilao); var maiores = leiloeiro.TresMaiores; //Then Assert.Equal(100, leiloeiro.MenorLance); Assert.Equal(400, leiloeiro.MaiorLance); Assert.Equal(400, maiores[0].Valor); Assert.Equal(300, maiores[1].Valor); Assert.Equal(200, maiores[2].Valor); }
public void ValoreOrdemCrescente() { Usuario Luan = new Usuario("Luan"); Usuario Fabiana = new Usuario("Fabiana"); Usuario João = new Usuario("João"); Leilao leilao = new Leilao("Play4"); leilao.Propoe(new Lance(Luan, 400)); leilao.Propoe(new Lance(Fabiana, 300)); leilao.Propoe(new Lance(João, 200)); leilao.Propoe(new Lance(Fabiana, 100)); Avaliador avalia = new Avaliador(); avalia.Avalia(leilao); var maiores = avalia.TresMaiores; var menores = avalia.TresMenos; Assert.AreEqual(100, menores[0].Valor, 0.0001); Assert.AreEqual(400, maiores[0].Valor, 0.0001); }
public void MaximoCincoLancePorUsuarioDobraLance() { var leilao = new Leilao("Yamaha Fazer 250"); var tiao = new Usuario("Sebastiao"); var tiago = new Usuario("Tiago"); leilao.Propoe(new Lance(tiao, 1000)); leilao.Propoe(new Lance(tiago, 1100)); leilao.DobraLance(tiao); leilao.DobraLance(tiago); leilao.DobraLance(tiao); leilao.DobraLance(tiago); leilao.DobraLance(tiao); leilao.DobraLance(tiago); leilao.DobraLance(tiao); leilao.DobraLance(tiago); leilao.DobraLance(tiao); leilao.DobraLance(tiago); Assert.AreEqual(10, leilao.Lances.Count); Assert.AreEqual(tiago, leilao.Lances[leilao.Lances.Count - 1].Usuario); Assert.AreEqual(17600d, leilao.Lances[leilao.Lances.Count - 1].ValorLance); }
public void NaoDeveAceitarDoisLancesSeguidosDoMesmoUsuario() { Leilao leilao = new Leilao("Macbook Pro 15"); leilao.Propoe(new Lance(stevejobs, 2000)); leilao.Propoe(new Lance(stevejobs, 3000)); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(2000, leilao.Lances[0].Valor, 0.00001); }
public void DeveReceberVariosLances() { Leilao leilao = new Leilao("Macbook Pro 15"); leilao.Propoe(new Lance(new Usuario("Steve Jobs"), 2000)); leilao.Propoe(new Lance(new Usuario("Steve Wozniak"), 3000)); Assert.AreEqual(2, leilao.Lances.Count); Assert.AreEqual(2000, leilao.Lances[0].Valor, 0.00001); Assert.AreEqual(3000, leilao.Lances[1].Valor, 0.00001); }
public void NaoDeveAceitarDoisLancesSeguidosDoMesmoUsuario() { var leilao = new Leilao("Impressora HP Deskjet 2540"); var usuario = new Usuario("João"); leilao.Propoe(new Lance(usuario, 1000)); leilao.Propoe(new Lance(usuario, 2000)); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(1000, leilao.Lances[0].Valor, 0.0001); }
public void NaoDeveAceitarDoisLancesSeguidosDoMesmoUsuario() { Leilao leilao = new Leilao("Ford Fox 2018"); var gustavo = new Usuario("Gustavo"); leilao.Propoe(new Lance(gustavo, 50000.0)); leilao.Propoe(new Lance(gustavo, 60000.0)); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(50000, leilao.Lances[0].Valor, 0.00001); }
public void NaoDeveAceitar2LancesEmSequenciaDadoPeloMesmoUsuario() { Usuario usuario = new Usuario("Nome"); Leilao leilao = new Leilao("Descricao"); leilao.Propoe(new Lance(usuario, 1)); leilao.Propoe(new Lance(usuario, 2)); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(1, leilao.Lances[0].Valor, 0.00001); }
public void DeveDobrarOUltimoLanceDado() { Leilao leilao = new Leilao("Macbook Pro 15"); Usuario steveJobs = new Usuario("Steve Jobs"); Usuario billGates = new Usuario("Bill Gates"); leilao.Propoe(new Lance(steveJobs, 2000)); leilao.Propoe(new Lance(billGates, 3000)); leilao.DobraLance(steveJobs); Assert.AreEqual(4000, leilao.Lances[2].Valor, 0.00001); }
public void DeveRealizarUmNovoLanceDobrandoOValorDoUltimoLanceDado() { var leilao = new Leilao("Impressora HP Deskjet 2540"); var joao = new Usuario("João"); var maria = new Usuario("Maria"); leilao.Propoe(new Lance(joao, 20000)); leilao.Propoe(new Lance(maria, 30000)); leilao.DobrarLance(joao); Assert.AreEqual(3, leilao.Lances.Count); Assert.AreEqual(20000 * 2, leilao.Lances[2].Valor, 0.0001); }
public void UsuarioNaoPodeDar2LancesEmSequencia() { Leilao leilao = new Leilao("Carro"); leilao.Propoe(new Lance(new Usuario("caiasdasdasdoasdasd"), 1000)); leilao.Propoe(new Lance(new Usuario("aline"), 2000)); leilao.Propoe(new Lance(new Usuario("caio"), 3000)); leilao.Propoe(new Lance(new Usuario("caio"), 4000)); Assert.AreEqual(3, leilao.Lances.Count); Assert.AreEqual(1000, leilao.Lances[0].Valor); Assert.AreEqual(3000, leilao.Lances[2].Valor); }
public void NaoPodeTerDoisLancesSeguidosDoMesmoUSuario() { var leilao = new Leilao("Yamaha Fazer 250"); var tiao = new Usuario("Sebastiao"); var tiago = new Usuario("Tiago"); leilao.Propoe(new Lance(tiao, 1500)); leilao.Propoe(new Lance(tiago, 2000)); leilao.Propoe(new Lance(tiago, 3000)); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(3000, leilao.Lances[leilao.Lances.Count - 1].ValorLance); }
public void DeveTestarLanceDobrado() { var jobs = new Usuario("Steve Jobs"); var waz = new Usuario("Steve Wozniak"); Leilao leilao = new Leilao("Macbook Pro 15"); leilao.Propoe(new Lance(jobs, 2000)); leilao.Propoe(new Lance(waz, 3000)); leilao.DobrarLance(jobs); Assert.AreEqual(3, leilao.Lances.Count); Assert.AreEqual(4000, leilao.Lances[2].Valor); }
public void Should_do_not_accept_two_throws_consecutive() { //Given Leilao leilao = new Leilao("Macbook Pro 15"); var steveJobs = new Usuario("Steve Jobs"); //When leilao.Propoe(new Lance(steveJobs, 2000)); leilao.Propoe(new Lance(steveJobs, 3000)); //Then Assert.Equal(1, leilao.Lances.Count); Assert.Equal(2000, leilao.Lances[0].Valor, 4); }
public void DeveDobrarOLanceAnteriorDeUmUsuario() { Usuario usuario1 = new Usuario("Nome1"); Usuario usuario2 = new Usuario("Nome2"); Leilao leilao = new Leilao("Descricao"); leilao.Propoe(new Lance(usuario1, 1)); leilao.Propoe(new Lance(usuario2, 3)); leilao.DobraLance(usuario1); int contagem = leilao.Lances.Count; Assert.AreEqual(3, contagem); Assert.AreEqual(2, leilao.Lances[contagem - 1].Valor); }
public void ValorMedio() { Leilao leilao = new Leilao("playStation 3"); double medioEsperado = (250.00 + 300.00 + 400.00) / 3; leilao.Propoe(new Lance(Usuarios[0], 250.00)); leilao.Propoe(new Lance(Usuarios[1], 300.00)); leilao.Propoe(new Lance(Usuarios[2], 400.00)); leiloeiro.Avalia(leilao); Assert.AreEqual(medioEsperado, leiloeiro.ValorMedio); }
//Cenario 6 public void DeveDevolverTodosLancesCasoNaoHajaNoMinimo3() { Usuario joao = new Usuario("Joao"); Usuario maria = new Usuario("maria"); Leilao leilao = new Leilao("PS4"); leilao.Propoe(new Lance(joao, 100.0)); leilao.Propoe(new Lance(maria, 200.0)); CriaAvaliador(); leiloeiro.Avalia(leilao); Assert.AreEqual(100, leiloeiro.MenorLance, 0.00001); Assert.AreEqual(200, leiloeiro.MaiorLance, 0.00001); }
public void Should_received_many_throws() { //Given Leilao leilao = new Leilao("Macbook Pro 15"); Usuario steveJobs = new Usuario("Steve Jobs"); Usuario steveWoznik = new Usuario("Steve Woznik"); //When leilao.Propoe(new Lance(steveJobs, 2000)); leilao.Propoe(new Lance(steveWoznik, 3000)); //Then Assert.Equal(2, leilao.Lances.Count); Assert.Equal(2000, leilao.Lances[0].Valor, 4); Assert.Equal(3000, leilao.Lances[1].Valor, 4); }
public void TesteDeLanceDobrado() { Leilao leilao = new Leilao("Carro"); Usuario caio = new Usuario("caio"); Usuario aline = new Usuario("aline"); leilao.Propoe(new Lance(caio, 1000)); leilao.Propoe(new Lance(aline, 2000)); leilao.Propoe(new Lance(caio, 3000)); leilao.Propoe(new Lance(aline, 4000)); leilao.DobrarLance(caio); Assert.AreEqual(5, leilao.Lances.Count); Assert.AreEqual(6000, leilao.Lances[leilao.Lances.Count - 1].Valor); }
public void UsuarioDobraOLance() { Leilao leilao = new Leilao("Macbook Pro 15"); leilao.Propoe(new Lance(stevejobs, 2000)); leilao.Propoe(new Lance(billgates, 3000)); leilao.DobraLance(stevejobs); Assert.AreEqual(3, leilao.Lances.Count); int ultimo = leilao.Lances.Count - 1; Lance ultimoLance = leilao.Lances[ultimo]; Assert.AreEqual(4000.0, ultimoLance.Valor, 0.00001); Assert.AreEqual(stevejobs, ultimoLance.Usuario); }
public void DeveReceberVariosLances() { var leilao = new Leilao("Play Station 3 Novo"); var leonardo = new Usuario("Leonardo"); var leandro = new Usuario("Leandro"); leilao.Propoe(new Lance(leonardo, 1500)); leilao.Propoe(new Lance(leandro, 2000)); leilao.Propoe(new Lance(leonardo, 3000)); leilao.Propoe(new Lance(leandro, 3600)); Assert.AreEqual(4, leilao.Lances.Count); Assert.AreEqual(1500, leilao.Lances[0].ValorLance); Assert.AreEqual(3600, leilao.Lances[3].ValorLance); }
// cenario 5: 3 lances em ordem crescente public void DeveEntenderLeilaoComLancesEmOrdemDecrescente() { Usuario erick = new Usuario("Erick"); Usuario marciele = new Usuario("Marciele"); Leilao leilao = new Leilao("Plastation 4"); leilao.Propoe(new Lance(erick, 400.0)); leilao.Propoe(new Lance(marciele, 300.0)); leilao.Propoe(new Lance(erick, 200.0)); leilao.Propoe(new Lance(marciele, 100.0)); CriaAvaliador(); leiloeiro.Avalia(leilao); Assert.AreEqual(400, leiloeiro.MaiorLance, 0.00001); Assert.AreEqual(100, leiloeiro.MenorLance, 0.00001); }
public Avaliador MontaCenario() { Usuario joao = new Usuario("Joao"); Usuario jose = new Usuario("José"); Usuario maria = new Usuario("Maria"); Usuario wesley = new Usuario("Wesley"); Usuario will = new Usuario("Will"); Usuario natalia = new Usuario("Natalia"); Usuario cabecao = new Usuario("Cabeção"); var leilao = new Leilao("Playstation 4 Novo"); leilao.Propoe(new Lance(joao, 300.0)); leilao.Propoe(new Lance(jose, 400.0)); leilao.Propoe(new Lance(maria, 250.0)); leilao.Propoe(new Lance(wesley, 25.0)); leilao.Propoe(new Lance(will, 700.0)); leilao.Propoe(new Lance(natalia, 1000.0)); leilao.Propoe(new Lance(cabecao, 1000.0)); Avaliador leiloeiro = new Avaliador(); leiloeiro.Avalia(leilao); return(leiloeiro); }
public void DeveEntenderLancesEmOrdemDecrescente() { Usuario joao = new Usuario("João"); Usuario maria = new Usuario("Maria"); Leilao leilao = new Leilao("Playstation 3 Novo"); leilao.Propoe(new Lance(maria, 400.0)); leilao.Propoe(new Lance(joao, 300.0)); leilao.Propoe(new Lance(maria, 200.0)); leilao.Propoe(new Lance(joao, 100.0)); Avaliador leiloeiro = new Avaliador(); leiloeiro.Avalia(leilao); Assert.AreEqual(400, leiloeiro.MaiorLance, 0.00001); Assert.AreEqual(100, leiloeiro.MenorLance, 0.00001); }
public void DeveEncontrarOsTresMaioresLances() { Leilao leilao = new Leilao("Playstation 3 Novo"); leilao.Propoe(new Lance(Usuarios[0], 100.0)); leilao.Propoe(new Lance(Usuarios[1], 200.0)); leilao.Propoe(new Lance(Usuarios[0], 300.0)); leilao.Propoe(new Lance(Usuarios[1], 400.0)); leiloeiro.Avalia(leilao); IList <Lance> maiores = leiloeiro.TresMaiores; Assert.AreEqual(3, maiores.Count); Assert.AreEqual(400, maiores[0].ValorLance, 0.00001); Assert.AreEqual(300, maiores[1].ValorLance, 0.00001); Assert.AreEqual(200, maiores[2].ValorLance, 0.00001); }
public void DeveRetonarApenasDoisLances() { Usuario joao = new Usuario("João"); Usuario maria = new Usuario("Maria"); Leilao leilao = new Leilao("Playstation 3 Novo"); leilao.Propoe(new Lance(joao, 100.0)); leilao.Propoe(new Lance(maria, 200.0)); Avaliador leiloeiro = new Avaliador(); leiloeiro.Avalia(leilao); IList <Lance> maiores = leiloeiro.TresMaiores; Assert.AreEqual(2, maiores.Count); Assert.AreEqual(200, maiores[0].Valor, 0.00001); Assert.AreEqual(100, maiores[1].Valor, 0.00001); }
public void DeveEncontrarOsDoisMaioresLances() { Usuario caio = new Usuario("Caio"); Usuario aline = new Usuario("Aline"); Leilao leilao = new Leilao("Carro"); leilao.Propoe(new Lance(caio, 500)); leilao.Propoe(new Lance(aline, 1000)); Avaliador leiloeiro = new Avaliador(); leiloeiro.Avalia(leilao); var maiores = leiloeiro.Maiores; Assert.AreEqual(2, maiores.Count); Assert.AreEqual(1000, maiores[0].Valor); Assert.AreEqual(500, maiores[1].Valor); }
public void DeveReceberUmLance() { Leilao leilao = new Leilao("Macbook Pro 15"); Assert.AreEqual(0, leilao.Lances.Count); leilao.Propoe(new Lance(new Usuario("Steve Jobs"), 2000)); Assert.AreEqual(1, leilao.Lances.Count); Assert.AreEqual(2000, leilao.Lances[0].Valor, 0.00001); }
public void UmMesmoUsuarioNaoPodeDarMaisDoQue5LancesNoMesmoLeilao() { Usuario usuario1 = new Usuario("Nome1"); Usuario usuario2 = new Usuario("Nome2"); Leilao leilao = new Leilao("Descricao"); leilao.Propoe(new Lance(usuario1, 1)); leilao.Propoe(new Lance(usuario2, 2)); leilao.Propoe(new Lance(usuario1, 2)); leilao.Propoe(new Lance(usuario2, 3)); leilao.Propoe(new Lance(usuario1, 4)); leilao.Propoe(new Lance(usuario2, 5)); leilao.Propoe(new Lance(usuario1, 6)); leilao.Propoe(new Lance(usuario2, 7)); leilao.Propoe(new Lance(usuario1, 8)); leilao.Propoe(new Lance(usuario2, 9)); leilao.Propoe(new Lance(usuario1, 10)); int contagem = leilao.Lances.Count; Assert.AreEqual(10, contagem); Assert.AreEqual(9, leilao.Lances[contagem - 1].Valor, 0.00001); }