コード例 #1
0
        public void ExecuteRegra()
        {
            var regra   = new RegraVencedorPartidaPorGols();
            var equipes = EquipeBuilder.CrieEquipesAleatorias(2);
            var result  = regra.ExecuteRegra(equipes.First(), equipes.Last());

            Assert.Equal(equipes.First(), result);
        }
コード例 #2
0
        public void CompareEquipesPorGols(short gols1, short gols2, int resultado)
        {
            var equipe1 = new EquipeBuilder().InicieCenarioConsiderandoGols(gols1).GetEquipe;
            var equipe2 = new EquipeBuilder().InicieCenarioConsiderandoGols(gols2).GetEquipe;
            var partida = new Partida(equipe1, equipe2);
            var define  = new DefineCampeaoEOrdenaFinalista(partida);

            Assert.Equal(resultado, define.Compare(equipe1, equipe2));
        }
コード例 #3
0
        public void ExecuteRegra(string equipe1, string equipe2, string resultado)
        {
            var regra  = new RegraVencedorPartidaAlfanumerico();
            var eq1    = EquipeBuilder.CrieEquipeRegraNomeAlfanumerico(equipe1);
            var eq2    = EquipeBuilder.CrieEquipeRegraNomeAlfanumerico(equipe2);
            var result = regra.ExecuteRegra(eq1, eq2);

            Assert.Equal(resultado, result.NomeEquipe.NomeCompleto);
        }
コード例 #4
0
        public void ProcesseCopa()
        {
            var equipes     = EquipeBuilder.CrieEquipesAleatorias(8);
            var copaService = new CopaServiceDomain();
            var result      = copaService.ProcesseCopa(equipes);

            Assert.Equal(equipes[7], result.First());
            Assert.Equal(equipes[3], result.Last());
        }
コード例 #5
0
        public void DefinaPartidasDaFase()
        {
            var equipe1   = new EquipeBuilder().InicieCenarioConsiderandoGols(1).GetEquipe;
            var equipe2   = new EquipeBuilder().InicieCenarioConsiderandoGols(2).GetEquipe;
            var regra     = new RegraDefinicaoPartidaFinal();
            var resultado = regra.DefinaPartidasDaFase(EquipeBuilder.CrieEquipes(equipe1, equipe2));

            Assert.Single(resultado);
        }
コード例 #6
0
ファイル: CopaFinalTest.cs プロジェクト: JDouglasMendes/Copa
        public void ExecuteFase()
        {
            var regra     = Substitute.For <IRegraDefinicaoPartida>();
            var copaFinal = new CopaFinal(regra);
            var equipes   = EquipeBuilder.CrieEquipesAleatorias(2);

            regra.DefinaPartidasDaFase(equipes).Returns(new List <Partida> {
                new Partida(equipes.First(), equipes.Last())
            });
            var resultado = copaFinal.ExecuteFase(equipes);

            Assert.Equal(equipes[0], resultado.First());
            Assert.Equal(equipes[1], resultado.Last());
        }
コード例 #7
0
        public void ExecuteFase()
        {
            var regra       = Substitute.For <IRegraDefinicaoPartida>();
            var copaSefinal = new CopaSemifinais(regra);
            var equipes     = EquipeBuilder.CrieEquipesAleatorias(4);

            regra.DefinaPartidasDaFase(equipes).Returns(new List <Partida> {
                new Partida(equipes[0], equipes[1]),
                new Partida(equipes[2], equipes[3])
            });
            var resultado = copaSefinal.ExecuteFase(equipes);

            Assert.Equal(equipes[0], resultado[0]);
            Assert.Equal(equipes[2], resultado[1]);
        }
コード例 #8
0
        public void DefinaPartidasDaFase()
        {
            var equipes = EquipeBuilder.CrieEquipesAleatorias(4);
            Assert.Equal(4, equipes.Count);
            var regra = new RegraDefinicaoPartidasSemifinais();
            var equipesProcessadas = regra.DefinaPartidasDaFase(equipes);
            var partida1 = new Partida(equipes[0], equipes[1]);
            var partida2 = new Partida(equipes[2], equipes[3]);

            Assert.Equal(partida1.PrimeiraEquipe, equipesProcessadas[0].PrimeiraEquipe);
            Assert.Equal(partida1.SegundaEquipe, equipesProcessadas[0].SegundaEquipe);

            Assert.Equal(partida2.PrimeiraEquipe, equipesProcessadas[1].PrimeiraEquipe);
            Assert.Equal(partida2.SegundaEquipe, equipesProcessadas[1].SegundaEquipe);
        }
コード例 #9
0
        public void ExecuteRegra(string equipe1, string equipe2, string resultado)
        {
            var regra  = new RegraVencedorPartidaConsiderandoNumerosNoNome();
            var eq1    = EquipeBuilder.CrieEquipeRegraNomeAlfanumerico(equipe1);
            var eq2    = EquipeBuilder.CrieEquipeRegraNomeAlfanumerico(equipe2);
            var result = regra.ExecuteRegra(eq1, eq2);

            if (resultado != null)
            {
                Assert.Equal(resultado, result.NomeEquipe.NomeCompleto);
            }
            if (resultado == null && result == null)
            {
                Assert.True(true);
            }
        }
コード例 #10
0
        public void ExecuteFase()
        {
            var regra            = Substitute.For <IRegraDefinicaoPartida>();
            var copaPrimeriaFase = new CopaPrimeiraFase(regra);
            var equipes          = EquipeBuilder.CrieEquipesAleatorias(8);

            regra.DefinaPartidasDaFase(equipes).Returns(new List <Partida> {
                new Partida(equipes[0], equipes[7]),
                new Partida(equipes[1], equipes[6]),
                new Partida(equipes[2], equipes[5]),
                new Partida(equipes[3], equipes[4])
            });

            var resultado = copaPrimeriaFase.ExecuteFase(equipes);

            Assert.Equal(equipes[7], resultado[0]);
            Assert.Equal(equipes[6], resultado[1]);
            Assert.Equal(equipes[5], resultado[2]);
            Assert.Equal(equipes[4], resultado[3]);
        }
コード例 #11
0
        public void DefinaPartidasDaFase()
        {
            var equipes = EquipeBuilder.CrieEquipesAleatorias(8);

            Assert.Equal(8, equipes.Count);
            var regra = new RegraDefinicaoPartidasPrimeiraFase();
            var equipesProcessadas = regra.DefinaPartidasDaFase(equipes);
            var partida1           = new Partida(equipes[0], equipes[7]);
            var partida2           = new Partida(equipes[1], equipes[6]);
            var partida3           = new Partida(equipes[2], equipes[5]);
            var partida4           = new Partida(equipes[3], equipes[4]);

            Assert.Equal(partida1.PrimeiraEquipe, equipesProcessadas[0].PrimeiraEquipe);
            Assert.Equal(partida1.SegundaEquipe, equipesProcessadas[0].SegundaEquipe);

            Assert.Equal(partida2.PrimeiraEquipe, equipesProcessadas[1].PrimeiraEquipe);
            Assert.Equal(partida2.SegundaEquipe, equipesProcessadas[1].SegundaEquipe);

            Assert.Equal(partida3.PrimeiraEquipe, equipesProcessadas[2].PrimeiraEquipe);
            Assert.Equal(partida3.SegundaEquipe, equipesProcessadas[2].SegundaEquipe);

            Assert.Equal(partida4.PrimeiraEquipe, equipesProcessadas[3].PrimeiraEquipe);
            Assert.Equal(partida4.SegundaEquipe, equipesProcessadas[3].SegundaEquipe);
        }