public ResultadoTorneio Joga()
        {
            FaseDeGrupos faseDeGrupos          = new FaseDeGrupos(lutadores);
            var          resultadoFaseDeGrupos = faseDeGrupos.Joga();

            QuartasDeFinal quartasDeFinal          = new QuartasDeFinal(resultadoFaseDeGrupos);
            var            resultadoQuartasDeFinal = quartasDeFinal.Joga();

            Semifinal semifinal          = new Semifinal(resultadoQuartasDeFinal);
            var       resultadoSemifinal = semifinal.Joga();

            Jogo terceiro          = new Jogo(resultadoSemifinal.PerdedorJogo1, resultadoSemifinal.PerdedorJogo2);
            var  resultadoTerceiro = terceiro.Joga();

            Jogo final          = new Jogo(resultadoSemifinal.VencedorJogo1, resultadoSemifinal.VencedorJogo2);
            var  resultadoFinal = final.Joga();


            return(new ResultadoTorneio(resultadoFinal.Vencedor, resultadoFinal.Perdedor, resultadoTerceiro.Vencedor,
                                        resultadoFaseDeGrupos.Jogos,
                                        resultadoQuartasDeFinal.Jogos,
                                        resultadoSemifinal.Jogos,
                                        resultadoTerceiro,
                                        resultadoFinal));
        }
        public void Create_FaseGrupo()
        {
            var lutadores = new List <Lutador>()
            {
                new Lutador(new List <string>()
                {
                    "a"
                }, 30, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 30, 10),
                new Lutador(new List <string>()
                {
                    "a", "c"
                }, 30, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 36, 10),
                new Lutador(new List <string>()
                {
                    "a", "b", "c"
                }, 30, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 40, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 24, 14),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 30, 10),
                new Lutador(new List <string>()
                {
                    "a", "b", "x"
                }, 30, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 30, 13),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 90, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 30, 13),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 62, 14),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 41, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 10, 11),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 33, 18),
                new Lutador(new List <string>()
                {
                    "a", "b", "a", "d"
                }, 30, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 30, 10),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 83, 13),
                new Lutador(new List <string>()
                {
                    "a", "b"
                }, 37, 19),
            };

            var fase = new FaseDeGrupos(lutadores);

            Assert.NotNull(fase);
        }