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);
        }
        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());
        }
Beispiel #3
0
        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());
        }
        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]);
        }
        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);
        }
        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]);
        }
        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);
        }