예제 #1
0
        public Vencedores Executar([FromBody] List <Filme> filmesDaCopa)
        {
            var copa = new Copa(8);

            foreach (var filme in filmesDaCopa)
            {
                copa.AddFilme(filme);
            }
            return(copa.ExecutarDisputas());
        }
예제 #2
0
        public void Menos_filme_que_o_informado()
        {
            var copa = new Copa(4);

            copa.AddFilme(CriarFilme("A", 10));
            copa.AddFilme(CriarFilme("B", 7));

            Action acao = () => copa.ExecutarDisputas();

            acao.Should().Throw <Exception>().And.Message.Should().Contain("tem somente 2");
        }
예제 #3
0
        public void Com_2_filmes()
        {
            var copa = new Copa(2);

            copa.AddFilme(CriarFilme("A", 10));
            copa.AddFilme(CriarFilme("B", 7));

            var vencedores = copa.ExecutarDisputas();

            vencedores.Campeao.Titulo.Should().Be("A");
            vencedores.ViceCampeao.Titulo.Should().Be("B");
        }
예제 #4
0
        public void Empate_ordem_desc()
        {
            var copa = new Copa(4);

            copa.AddFilme(CriarFilme("D", 10)); //-----------------
            copa.AddFilme(CriarFilme("C", 2));  //-------------|  |
            copa.AddFilme(CriarFilme("B", 2));  //Vencedor-----|  |
            copa.AddFilme(CriarFilme("A", 10)); //Vencedor---------

            var vencedores = copa.ExecutarDisputas();

            vencedores.Campeao.Titulo.Should().Be("A");
            vencedores.ViceCampeao.Titulo.Should().Be("B");
        }
예제 #5
0
        public void Caso_de_teste_do_desafio()
        {
            var copa = new Copa(8);

            copa.AddFilme(CriarFilme("Os Incríveis 2", 8.5m));
            copa.AddFilme(CriarFilme("Jurassic World: Reino Ameaçado", 6.7m));
            copa.AddFilme(CriarFilme("Oito Mulheres e um Segredo", 6.3m));
            copa.AddFilme(CriarFilme("Hereditário", 7.8m));
            copa.AddFilme(CriarFilme("Vingadores: Guerra Infinita", 8.8m));
            copa.AddFilme(CriarFilme("Deadpool 2", 8.1m));
            copa.AddFilme(CriarFilme("Han Solo: Uma História Star Wars", 7.2m));
            copa.AddFilme(CriarFilme("Thor: Ragnarok", 7.9m));

            var vencedores = copa.ExecutarDisputas();

            vencedores.Campeao.Titulo.Should().Be("Vingadores: Guerra Infinita");
            vencedores.ViceCampeao.Titulo.Should().Be("Os Incríveis 2");
        }
예제 #6
0
        public void Com_8_filmes()
        {
            var copa = new Copa(8);

            copa.AddFilme(CriarFilme("I", 7));
            copa.AddFilme(CriarFilme("H", 2));
            copa.AddFilme(CriarFilme("G", 9));
            copa.AddFilme(CriarFilme("F", 10));
            copa.AddFilme(CriarFilme("D", 6.5m));
            copa.AddFilme(CriarFilme("C", 5));
            copa.AddFilme(CriarFilme("B", 4.5m));
            copa.AddFilme(CriarFilme("A", 3));

            var vencedores = copa.ExecutarDisputas();

            vencedores.Campeao.Titulo.Should().Be("F");
            vencedores.ViceCampeao.Titulo.Should().Be("G");
        }