Пример #1
0
        public void NaoDeveAceitarMaisDoQue5LancesDeUmMesmoUsuario()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Macbook Pro 15")
                            .Lance(jobs, 2000.0)
                            .Lance(gates, 3000.0)

                            .Lance(jobs, 4000.0)
                            .Lance(gates, 5000.0)

                            .Lance(jobs, 6000.0)
                            .Lance(gates, 7000.0)

                            .Lance(jobs, 8000.0)
                            .Lance(gates, 9000.0)

                            .Lance(jobs, 10000.0)
                            .Lance(gates, 11000.0)

                            //Deve ser ignorado
                            .Lance(jobs, 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);
        }
Пример #2
0
        public void NaoDeveAvaliarCasoNaoHajaLances()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation")
                            .Constroi();

            leiloeiro.Avalia(leilao);
        }
Пример #3
0
        // ExpectedException removed from NUnit 3.0
        // https://stackoverflow.com/questions/33895457/expectedexception-in-nunit-gave-me-an-error
        public void NaoDeveAvaliarLeiloesSemNenhumLanceDado()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation").Constroi();

            // Now using Assert.That instead
            Assert.That(() => leiloeiro.Avalia(leilao), Throws.TypeOf <Exception>());
        }
Пример #4
0
        public void naoDeveAvaliarLeilaoesSemnenhumLanceDado()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .Constroi();

            leiloeiro.Avalia(leilao);
        }
Пример #5
0
        public void NaoDeveAvaliarLeiloesSemNenhumLanceDado()
        {
            Leilao leilao = new CriadorDeLeilao()
                .Para("Playstation 3 Novo")
                .Constroi();

            leiloeiro.Avalia(leilao);
        }
Пример #6
0
        public void TesteNãoDeveAvaliarSemLance()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 2").Constroi();

            leiloeiro.Avalia(leilao);

            //Assert.???
        }
Пример #7
0
        public void NaoDeveDobrarCasoNaoHajaLanceAnterior()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Macbook Air")
                            .Constroi();

            leilao.DobraLance(jobs);

            Assert.AreEqual(0, leilao.Lances.Count);
        }
Пример #8
0
        public void NaoDeveAceitarDoisLancesSeguidosDoMesmoUsuario()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Macbook Pro 15")
                            .Lance(jobs, 2000.0)
                            .Lance(jobs, 3000.0)
                            .Constroi();

            Assert.AreEqual(1, leilao.Lances.Count);
            Assert.AreEqual(2000, leilao.Lances[0].Valor, 0.0001);
        }
Пример #9
0
        public void DeveReceberUmLance()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Macbook Pro 15").Constroi();
            Assert.AreEqual(0, leilao.Lances.Count);

            leilao.Propoe(new Lance(new Usuario("Steve Jobs"), 2000));

            Assert.AreEqual(1, leilao.Lances.Count);
            Assert.AreEqual(2000.0, leilao.Lances[0].Valor, 0.00001);
        }
Пример #10
0
        public void DeveEntenderLeilaoCOmApenasUmLance()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Plastation 4 Novo")
                            .Lance(joao, 1000)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(1000, leiloeiro.MaiorLance, 0.0001);
            Assert.AreEqual(1000, leiloeiro.MenorLance, 0.0001);
        }
Пример #11
0
        public void TesteComApenasUmLance()
        {
            Leilao leilao = new CriadorDeLeilao().Para("PS4")
                            .Lance(joao, 1500.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(1500, leiloeiro.maiorLance, 0.00001);
            Assert.AreEqual(1500, leiloeiro.menorLance, 0.00001);
        }
Пример #12
0
        public void DeveEncontraNenhumLance()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .Constroi();

            leiloeiro.Avalia(leilao);

            var maiores = leiloeiro.TresMaiores;

            Assert.AreEqual(0, maiores.Count);
        }
Пример #13
0
        public void DeveReceberUmLance()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Mackbook Pro 15").Constroi();

            Assert.AreEqual(0, leilao.Lances.Count);

            leilao.Propoe(new Lance(jobs, 2000.0));

            Assert.AreEqual(1, leilao.Lances.Count);
            Assert.AreEqual(2000, leilao.Lances[0].Valor, 0.00001);
        }
Пример #14
0
        public void DeveDevolverListaVaziaCasoNaoHajaLances()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .Constroi();

            leiloeiro.Avalia(leilao);

            var maiores = leiloeiro.TresMaiores;

            Assert.AreEqual(0, maiores.Count);
        }
Пример #15
0
        public void DeveDobrarUltimoLancePropostoPeloUsuario()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Macbook Air")
                            .Lance(jobs, 2000.0)
                            .Lance(wozniak, 1000.0)
                            .Constroi();

            leilao.DobraLance(jobs);

            Assert.AreEqual(4000, leilao.Lances[2].Valor, 0.00001);
        }
Пример #16
0
        public void TesteListaDeLancesVazia()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Monitor 24p")
                            .Constroi();

            leiloeiro.Avalia(leilao);

            var maiores = leiloeiro.TresMaiores;

            Assert.AreEqual(0, maiores.Count);
        }
Пример #17
0
        public void LeilaoComDoisLances()
        {
            Leilao leilao = new CriadorDeLeilao()
                            .Para("Playstation 3 Novo")
                            .Lance(joao, 100)
                            .Lance(jose, 200)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(2, leiloeiro.TresMaiores.Count);
        }
Пример #18
0
        public void NaoDeveAceitarDoisLancesSeguidosDoMesmoUsuario()
        {
            Usuario steveJobs = new Usuario("Steve Jobs");
            Leilao leilao = new CriadorDeLeilao()
                .Para("Macbook Pro 15")
                .Lance(steveJobs, 2000.0)
                .Lance(steveJobs, 3000.0)
                .Constroi();

            Assert.AreEqual(1, leilao.Lances.Count);
            Assert.AreEqual(2000.0, leilao.Lances[0].Valor, 0.00001);
        }
Пример #19
0
        public void DeveReceberVariosLances()
        {
            Leilao leilao = new CriadorDeLeilao()
                .Para("Macbook Pro 15")
                .Lance(new Usuario("Steve Jobs"), 2000)
                .Lance(new Usuario("Steve Wozniak"), 3000)
                .Constroi();

            Assert.AreEqual(2, leilao.Lances.Count);
            Assert.AreEqual(2000.0, leilao.Lances[0].Valor, 0.00001);
            Assert.AreEqual(3000.0, leilao.Lances[1].Valor, 0.00001);
        }
Пример #20
0
        public void DeveCalcularAMedia()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .Lance(maria, 300.0)
                            .Lance(joao, 400.0)
                            .Lance(jose, 500.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(400, leiloeiro.ValorMedio, 0.0001);
        }
Пример #21
0
        public void DeveEntenderLeilaoComApenasUmLance()
        {
            Leilao leilao = new CriadorDeLeilao()
            .Para("Playstation 3 Novo")
            .Lance(joao, 1000)
            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(1000.0, leiloeiro.MaiorLance, 0.00001);
            Assert.AreEqual(1000.0, leiloeiro.MenorLance, 0.00001);
        }
Пример #22
0
        public void DeveReceberVariosLances()
        {
            Leilao leilao = new CriadorDeLeilao()
                            .Para("Macbook Pro 15")
                            .Lance(new Usuario("Steve Jobs"), 2000)
                            .Lance(new Usuario("Steve Jobs"), 3000)
                            .Constroi();

            Assert.AreEqual(2, leilao.Lances.Count);
            Assert.AreEqual(2000, leilao.Lances[0].Valor, 0.0001);
            Assert.AreEqual(3000, leilao.Lances[1].Valor, 0.0001);
        }
Пример #23
0
        public void DeveEntenderLancesEmOrdemCrescente()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .Lance(maria, 250.0)
                            .Lance(joao, 300.0)
                            .Lance(jose, 400.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(400, leiloeiro.MaiorLance, 0.0001);
            Assert.AreEqual(250, leiloeiro.MenorLance, 0.0001);
        }
Пример #24
0
        public void LanceDeDuzentos()
        {
            double valorLance = 200;
            Leilao leilao     = new CriadorDeLeilao().
                                Para("Playstation 3 Novo")
                                .Lance(joao, valorLance)
                                .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(valorLance, leiloeiro.MaiorLance, 0.0001);
            Assert.AreEqual(valorLance, leiloeiro.MenorLance, 0.0001);
        }
Пример #25
0
        public void DeveEntenderLancesEmOrdemCrescente()
        {
            Leilao leilao = new CriadorDeLeilao()
                .Para("Playstation 3 Novo")
                .Lance(joao, 250)
                .Lance(jose, 300)
                .Lance(maria, 400)
                .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(400.0, leiloeiro.MaiorLance, 0.00001);
            Assert.AreEqual(250.0, leiloeiro.MenorLance, 0.00001);
        }
Пример #26
0
        public void TesteOrdemDecrescente()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Espelho")
                            .Lance(alex, 400.0)
                            .Lance(maria, 300.0)
                            .Lance(alex, 200.0)
                            .Lance(maria, 100.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(400, leiloeiro.maiorLance, 0.00001);
            Assert.AreEqual(100, leiloeiro.menorLance, 0.00001);
        }
Пример #27
0
        public void DeveReceberVariosLances()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Mackbook Pro 15").Constroi();

            Assert.AreEqual(0, leilao.Lances.Count);

            leilao.Propoe(new Lance(jobs, 2000.0));
            leilao.Propoe(new Lance(wozniak, 3000.0));

            Assert.AreEqual(2, leilao.Lances.Count);
            Assert.AreEqual(2000, leilao.Lances[0].Valor, 0.00001);
            Assert.AreEqual(3000, leilao.Lances[1].Valor, 0.00001);
            Console.WriteLine(wozniak.Nome);
        }
Пример #28
0
        public void DeveAvaliarLeilaoComApenasUmLance()
        {
            // cenario
            Leilao leilao = new CriadorDeLeilao()
                .Para("Descricao")
                .ComLance(usuario1, 1)
                .Constroi();

            // acao
            avaliador.Avalia(leilao);

            // validacao
            Assert.AreEqual(1, avaliador.MenorLance);
            Assert.AreEqual(1, avaliador.MaiorLance);
        }
Пример #29
0
        public void DeveDevolverTodosLancesCasoNaoHajaNoMinimo3()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .Lance(joao, 800.0)
                            .Lance(maria, 400.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            var maiores = leiloeiro.TresMaiores;

            Assert.AreEqual(2, maiores.Count);
            Assert.AreEqual(800, maiores[0].Valor, 0.0001);
            Assert.AreEqual(400, maiores[1].Valor, 0.0001);
        }
Пример #30
0
        public void TestePegaDoisUnicosLances()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Monitor 24p")
                            .Lance(alex, 450.0)
                            .Lance(maria, 480.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            var maiores = leiloeiro.TresMaiores;

            Assert.AreEqual(2, maiores.Count);
            Assert.AreEqual(480, maiores[0].Valor, 0.00001);
            Assert.AreEqual(450, maiores[1].Valor, 0.00001);
        }
Пример #31
0
        public void DeveEncontrarDoisLances()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .Lance(joao, 100.0)
                            .Lance(maria, 200.0)
                            .Constroi();

            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);
        }
Пример #32
0
        public void CalculaValorMedio()
        {
            Leilao leilao = new CriadorDeLeilao()
                            .Para("Playstation 3 Novo")
                            .Lance(maria, 300.0)
                            .Lance(joao, 300.0)
                            .Lance(jose, 300.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            double esperado = 300;

            Assert.AreEqual(esperado, leiloeiro.MediaDosLances, 0.0001);
        }
Пример #33
0
        public void LancesDecrescentes()
        {
            Leilao leilao = new CriadorDeLeilao()
                            .Para("Playstation 3 Novo")
                            .Lance(joao, 400)
                            .Lance(jose, 300)
                            .Lance(joao, 200)
                            .Lance(jose, 100)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(100, leiloeiro.MenorLance, 0.0001);
            Assert.AreEqual(400, leiloeiro.MaiorLance, 0.0001);
        }
Пример #34
0
        public void TesteNumerosRandomicos()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Jogo PS4")
                            .Lance(alex, 200.0)
                            .Lance(maria, 450.0)
                            .Lance(alex, 120.0)
                            .Lance(maria, 700.0)
                            .Lance(alex, 630.0)
                            .Lance(maria, 230.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(700, leiloeiro.maiorLance, 0.00001);
            Assert.AreEqual(120, leiloeiro.menorLance, 0.00001);
        }
Пример #35
0
        public void DeveEntenderLancesEmOrdemRandomica()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .Lance(joao, 250.0)
                            .Lance(maria, 450.0)
                            .Lance(jose, 120.0)
                            .Lance(maria, 700.0)
                            .Lance(joao, 630.0)
                            .Lance(jose, 230.0)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(700, leiloeiro.MaiorLance, 0.0001);
            Assert.AreEqual(120, leiloeiro.MenorLance, 0.0001);
        }
Пример #36
0
        public void DeveEntenderLancesEmOrdemCrescente()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation")
                            .Lance(maria, 250.0)
                            .Lance(joao, 300)
                            .Lance(jose, 400)
                            .Constroi();

            leiloeiro.Avalia(leilao);

            double maiorEsperado = 400;
            double menorEsperado = 250;

            Assert.AreEqual(maiorEsperado, leiloeiro.MaiorLance, 0.00001);
            Assert.AreEqual(menorEsperado, leiloeiro.MenorLance, 0.00001);
        }
Пример #37
0
        public void DeveCalcularMedia()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation")
                            .Lance(maria, 250.0)
                            .Lance(joao, 300)
                            .Lance(jose, 400)
                            .Constroi();

            leilao.Propoe(new Lance(maria, 250.0));
            leilao.Propoe(new Lance(joao, 300.0));
            leilao.Propoe(new Lance(jose, 400.0));

            leiloeiro.Avalia(leilao);

            Assert.AreEqual(317.0, leiloeiro.Media, 0.00001);
        }
Пример #38
0
        public void DeveAvaliarLeilaoComLancesEmOrdemCrescente()
        {
            // cenario
            Leilao leilao = new CriadorDeLeilao()
                .Para("Descricao")
                .ComLance(usuario1, 1)
                .ComLance(usuario2, 2)
                .ComLance(usuario3, 3)
                .Constroi();

            // acao
            avaliador.Avalia(leilao);

            // validacao
            Assert.AreEqual(1, avaliador.MenorLance, 0.00001);
            Assert.AreEqual(3, avaliador.MaiorLance, 0.00001);
        }
Пример #39
0
        public void DeveEncontrarOsTresMaioresLances()
        {
            Leilao leilao = new CriadorDeLeilao()
                .Para("Playstation 3 Novo")
                .Lance(joao, 100)
                .Lance(maria, 200)
                .Lance(joao, 300)
                .Lance(maria, 400)
                .Constroi();

            leiloeiro.Avalia(leilao);

            var maiores = leiloeiro.TresMaiores;
            Assert.AreEqual(3, maiores.Count);
            Assert.AreEqual(400.0, maiores[0].Valor, 0.00001);
            Assert.AreEqual(300.0, maiores[1].Valor, 0.00001);
            Assert.AreEqual(200.0, maiores[2].Valor, 0.00001);
        }
Пример #40
0
        public void NaoDeveAceitarMaisDoQue5LancesDeUmMesmoUsuario()
        {
            Usuario steveJobs = new Usuario("Steve Jobs");
            Usuario billGates = new Usuario("Bill Gates");

            Leilao leilao = new CriadorDeLeilao().Para("Macbook Pro 15")
                    .Lance(steveJobs, 2000)
                    .Lance(billGates, 3000)
                    .Lance(steveJobs, 4000)
                    .Lance(billGates, 5000)
                    .Lance(steveJobs, 6000)
                    .Lance(billGates, 7000)
                    .Lance(steveJobs, 8000)
                    .Lance(billGates, 9000)
                    .Lance(steveJobs, 10000)
                    .Lance(billGates, 11000)
                    .Lance(steveJobs, 12000)
                    .Constroi();

            Assert.AreEqual(10, leilao.Lances.Count);
            int ultimo = leilao.Lances.Count - 1;
            Assert.AreEqual(11000.0, leilao.Lances[ultimo].Valor, 0.00001);
        }
Пример #41
0
        public void DeveInformarTodosOsLancesComoMaioresQuandoMenosDoQueTresLancesForemPropostos()
        {
            // cenario
            Leilao leilao = new CriadorDeLeilao()
                .Para("Descricao")
                .ComLance(usuario1, 1)
                .ComLance(usuario2, 2)
                .Constroi();

            // acao
            avaliador.Avalia(leilao);

            // validacao
            Assert.AreEqual(2, avaliador.TresMaiores.Count);
            Assert.AreEqual(2, avaliador.TresMaiores[0].Valor);
            Assert.AreEqual(1, avaliador.TresMaiores[1].Valor);
        }
Пример #42
0
 public void NaoDeveAvaliarLeilaoSemLance()
 {
     Leilao leilao = new CriadorDeLeilao().Para("Descricao").Constroi();
     avaliador.Avalia(leilao);
 }
Пример #43
0
        public void DeveInformarOsTresMaioresLancesDeUmLeilao()
        {
            // cenario
            Leilao leilao = new CriadorDeLeilao()
                .Para("Descricao")
                .ComLance(usuario1, 1)
                .ComLance(usuario2, 2)
                .ComLance(usuario3, 3)
                .Constroi();

            // acao
            avaliador.Avalia(leilao);

            // validacao
            Assert.AreEqual(3, avaliador.TresMaiores.Count);
            Assert.AreEqual(3, avaliador.TresMaiores[0].Valor);
            Assert.AreEqual(2, avaliador.TresMaiores[1].Valor);
            Assert.AreEqual(1, avaliador.TresMaiores[2].Valor);
        }