예제 #1
0
        static 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));

            Console.WriteLine(10 == leilao.Lances.Count);

            var ultimo = leilao.Lances.Count - 1;

            var ultimoLance = leilao.Lances[ultimo];

            Console.WriteLine(6500 == ultimoLance.Valor);
        }
예제 #2
0
        static 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
            Console.WriteLine(2 == leiloeiro.TresMaiores.Count);
            Console.WriteLine(415 == maiores[0].Valor);
            Console.WriteLine(300 == maiores[1].Valor);
        }
예제 #3
0
        static 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;

            Console.WriteLine(mediaEsperada == leiloeiro.LanceMedio);
        }
예제 #4
0
        static void DeveEntenderLancesEmOrdemCrescente()
        {
            Leilao leilao = new CriadorDeLeilao().Para("Playstation 3 Novo")
                            .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;

            Console.WriteLine(maiorEsperado == leiloeiro.MaiorLance);
            Console.WriteLine(menorEsperado == leiloeiro.MenorLance);
        }
예제 #5
0
        static 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
            Console.WriteLine(3 == leiloeiro.TresMaiores.Count);
            Console.WriteLine(415 == maiores[0].Valor);
            Console.WriteLine(400 == maiores[1].Valor);
            Console.WriteLine(300 == maiores[2].Valor);
        }