Ejemplo n.º 1
0
        public void SetSelecionaLutador(int id, bool check)
        {
            Lutador lutador = db.lutadores.Find(id);

            lutador.selecionado = check;
            db.SaveChanges();
        }
Ejemplo n.º 2
0
        private void CarregaLutadores()
        {
            if (db.lutadores.Where(l => l.selecionado).Count() == 0)
            {
                LimpaRegistros();

                HttpResponseMessage response = client.GetAsync("/lutadores/api/competidores").Result;

                if (response.IsSuccessStatusCode)
                {
                    lutadores = response.Content.ReadAsAsync <IEnumerable <LutadorApi> >().Result;
                }

                foreach (var item in lutadores)
                {
                    Lutador competidor = new Lutador()
                    {
                        id            = item.id,
                        nome          = item.nome,
                        idade         = item.idade,
                        artesMarciais = item.artesMarciais.Count(),
                        lutas         = item.lutas,
                        derrotas      = item.derrotas,
                        vitorias      = item.vitorias,
                        selecionado   = item.selecionado
                    };
                    db.lutadores.Add(competidor);
                }

                db.SaveChanges();
            }
        }
Ejemplo n.º 3
0
        private Lutador GetYoungestFighter(int championshipMoment)
        {
            int minAge = 200;

            Lutador        youngestFighter = new Lutador();
            List <Lutador> lstFighters;

            if (championshipMoment == 8)
            {
                lstFighters = fighters_Octaves;
            }
            else
            {
                lstFighters = fighters_Quarters;
            }

            foreach (Lutador fighter in lstFighters)
            {
                if (fighter.idade < minAge && !fighters_AlreadyInChamp.Exists(f => f.id == fighter.id))
                {
                    minAge          = fighter.idade;
                    youngestFighter = fighter;
                }
            }

            fighters_AlreadyInChamp.Add(youngestFighter);
            return(youngestFighter);
        }
        public void Joga_desempate_por_artesMarciais()
        {
            var fakeLutador1 = new Lutador(new List <String>()
            {
                "a", "b", "c"
            }, 1, 0);
            var fakeLutador2 = new Lutador(new List <String>()
            {
                "a", "b"
            }, 2, 0);
            var fakeJogo = new Jogo(fakeLutador1, fakeLutador2);

            var resultadoFake = fakeJogo.Joga();

            Assert.Equal(resultadoFake.Vencedor, fakeLutador1);
            Assert.Equal(resultadoFake.Perdedor, fakeLutador2);

            var fakeLutador3 = new Lutador(new List <String>()
            {
                "a", "b", "c", "e"
            }, 1, 0);
            var fakeJogo2      = new Jogo(fakeLutador2, fakeLutador3);
            var resultadoFake2 = fakeJogo2.Joga();

            Assert.Equal(resultadoFake2.Vencedor, fakeLutador3);
            Assert.Equal(resultadoFake2.Perdedor, fakeLutador2);
        }
Ejemplo n.º 5
0
        public void TestarGrupos()
        {
            // Construir Cenário
            Grupo grupo = new Grupo();

            Lutador lutador1 = new Lutador(1, "Jacaré", 39, new List <string> {
                "Jiu-jítsu"
            }, 32, 6, 26);
            Lutador lutador2 = new Lutador(2, "Chael", 41, new List <string> {
                "Greco-romana"
            }, 47, 16, 30);
            Lutador lutador3 = new Lutador(3, "Tyson", 52, new List <string> {
                "Boxe"
            }, 58, 6, 50);
            Lutador lutador4 = new Lutador(4, "Cigano", 35, new List <string> {
                "Boxe", "Jiu-Jitsu"
            }, 25, 5, 20);
            Lutador lutador5 = new Lutador(5, "Hughes", 45, new List <string> {
                "Artes marciais mistas"
            }, 54, 9, 45);

            grupo.Participantes.Add(lutador1);
            grupo.Participantes.Add(lutador2);
            grupo.Participantes.Add(lutador3);
            grupo.Participantes.Add(lutador4);
            grupo.Participantes.Add(lutador5);

            //Executar
            grupo.MontarPartidas();
            grupo.JogarPartidas();
            grupo.EncerrarGrupo();

            // Verificar
            Assert.AreEqual(lutador3.Nome, grupo.PrimeiroLugarGrupo.Nome, "Lutador " + grupo.PrimeiroLugarGrupo.Nome + " Venceu");
        }
Ejemplo n.º 6
0
        public ActionResult CriarLutador(LutadorViewModel lutadorViewModel)
        {
            var userInfo  = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
            var usuarioId = userInfo.Contains("|") ? Int64.Parse(userInfo.Split('|').First()) : 0;

            if (string.IsNullOrEmpty(userInfo))
            {
                RedirectToAction("Login", "Account");
            }

            var lutador = new Lutador()
            {
                Nome    = lutadorViewModel.Nome,
                Apelido = lutadorViewModel.Apelido
            };

            var usuario = _repositorioUsuario.Get(usuarioId);

            usuario.Lutador = lutador;

            _repositorioUsuario.Update(usuario);

            //_repositorioLutador.Add(lutador);

            return(RedirectToAction("Index"));
        }
        public void Create_jogo_success()
        {
            var fakeLutador1 = new Lutador(new List <String>(), 1, 0);
            var fakeLutador2 = new Lutador(new List <String>(), 2, 0);
            var fakeJogo     = new Jogo(fakeLutador1, fakeLutador2);

            Assert.NotNull(fakeJogo);
        }
 public ResultadoQuartasDeFinal(Lutador vencedorJogo1, Lutador vencedorJogo2, Lutador vencedorJogo3, Lutador vencedorJogo4, List <ResultadoJogo> jogos)
 {
     this.VencedorJogo1 = vencedorJogo1;
     this.VencedorJogo2 = vencedorJogo2;
     this.VencedorJogo3 = vencedorJogo3;
     this.VencedorJogo4 = vencedorJogo4;
     this.Jogos         = jogos;
 }
Ejemplo n.º 9
0
 public ResultadoSemiFinal(Lutador vencedorJogo1, Lutador vencedorJogo2, Lutador perdedorJogo1, Lutador perdedorJogo2, List <ResultadoJogo> jogos)
 {
     this.VencedorJogo1 = vencedorJogo1;
     this.VencedorJogo2 = vencedorJogo2;
     this.PerdedorJogo1 = perdedorJogo1;
     this.PerdedorJogo2 = perdedorJogo2;
     this.Jogos         = jogos;
 }
Ejemplo n.º 10
0
        private void BtnEnviarMensagem_Click(object sender, EventArgs e)
        {
            var lutador = new Lutador(1, "Novo lutador", 31, new List <string> {
                "Boxe"
            }, 0, 0, 0);

            _lutadorSignalRService.SendMessage("CadastrarLutadorNoTorneio", lutador);
        }
Ejemplo n.º 11
0
        Lutador GetWinner(Lutador fighter1, Lutador fighter2)
        {
            int percVictoryFighter1 = Convert.ToInt32(Math.Round(Convert.ToDouble(fighter1.vitorias) / Convert.ToDouble(fighter1.lutas) * 100, 2));
            int percVictoryFighter2 = Convert.ToInt32(Math.Round(Convert.ToDouble(fighter2.vitorias) / Convert.ToDouble(fighter2.lutas) * 100, 2));

            if (percVictoryFighter1 > percVictoryFighter2)
            {
                return(fighter1);
            }
            else
            {
                if (percVictoryFighter2 > percVictoryFighter1)
                {
                    return(fighter2);
                }
                else
                {
                    // Vai cair aqui sempre que houver impate...

                    /*
                     *  1.  Primeiramente será comparado a quantidade de artes marciais;
                     *  2.  Caso a Qtd. de Artes Marciais não seja o suficiente, será comparado o número de lutas...
                     */

                    if (fighter1.artesMarciais.Length > fighter2.artesMarciais.Length)
                    {
                        return(fighter1);
                    }
                    else
                    {
                        if (fighter2.artesMarciais.Length > fighter1.artesMarciais.Length)
                        {
                            return(fighter2);
                        }
                        else
                        {
                            //Aqui será comparado o número de lutas (Segundo critério de desempate)

                            if (fighter1.lutas > fighter2.lutas)
                            {
                                return(fighter1);
                            }
                            else
                            {
                                if (fighter2.lutas > fighter1.lutas)
                                {
                                    return(fighter2);
                                }
                            }
                        }
                    }
                }
            }

            return(fighter1); // Necessita tratamento, porém, "na teoria" - NUNCA vai cair aqui...
        }
Ejemplo n.º 12
0
        private void SetSelectedFighters(string idFighters)
        {
            string[] arrIdFighters = idFighters.Split(",");

            for (int i = 0; i < arrIdFighters.Length; i++)
            {
                int     idFighter = Convert.ToInt32(arrIdFighters[i]);
                Lutador fighter   = GetFighterData(idFighter);
                fighters_Octaves.Add(fighter);
            }
        }
        public void Joga_vitoriaPadrao()
        {
            var fakeLutador1 = new Lutador(new List <String>(), 1, 7);
            var fakeLutador2 = new Lutador(new List <String>(), 2, 6);
            var fakeJogo     = new Jogo(fakeLutador1, fakeLutador2);

            var resultadoFake = fakeJogo.Joga();

            Assert.Equal(resultadoFake.Vencedor, fakeLutador1);
            Assert.Equal(resultadoFake.Perdedor, fakeLutador2);
        }
Ejemplo n.º 14
0
 public ResultadoTorneio(Lutador vencedor, Lutador vice, Lutador terceiroColocado, List <ResultadoJogo> faseDeGrupos, List <ResultadoJogo> quartasDeFinal, List <ResultadoJogo> semiFinal, ResultadoJogo terceiro, ResultadoJogo final)
 {
     this.Vencedor         = vencedor;
     this.Vice             = vice;
     this.TerceiroColocado = terceiroColocado;
     this.FaseDeGrupos     = faseDeGrupos;
     this.QuartasDeFinal   = quartasDeFinal;
     this.SemiFinal        = semiFinal;
     this.TerceiroJogo     = terceiro;
     this.Final            = final;
 }
Ejemplo n.º 15
0
        public static IList <Lutador> MockListaDeLutadores(int quantidade)
        {
            var lutadores = new List <Lutador>();

            for (var index = 0; index < quantidade; index++)
            {
                var lutador = new Lutador($"{index}", (ulong)index, (ulong)index);
                lutadores.Add(lutador);
            }
            return(lutadores);
        }
Ejemplo n.º 16
0
        public Lutador final(List <Lutador> lutadoresVencedores)
        {
            Lutador vencedor = new Lutador();

            for (int i = 0; i < lutadoresVencedores.Count; i += 2)
            {
                vencedor = lutar(lutadoresVencedores[i], lutadoresVencedores[i + 1]);
            }

            return(vencedor);
        }
Ejemplo n.º 17
0
        public void DeveRetornarOMrSatanComoVencedorDoTorneio()
        {
            var mrSatan   = new Lutador("Mr. Satan", 1, 1);
            var lutadores = TorneioTestData.MockListaDeLutadores(7);

            lutadores.Add(mrSatan);

            var torneio = new Torneio(lutadores);

            var vencedor = torneio.ExecutarTorneio();

            Assert.Equal(mrSatan, vencedor);
        }
Ejemplo n.º 18
0
        Lutador GetFighterData(int id)
        {
            Lutador fighter = new Lutador();

            foreach (var lutador in listFighters)
            {
                if (lutador.id == id)
                {
                    fighter = lutador;
                    break;
                }
            }
            return(fighter);
        }
        void SetarDadosLutadoresSelecionados(string[] pLutadoresSel)
        {
            /*
             * Gera list com os dados (somente dos lutadores selecionados)
             * ...Somente para ter uma lista mais enxuta no momento das comparações...
             */

            for (int x = 0; x <= pLutadoresSel.Length - 1; x++)
            {
                //Retorna dados do lutador de Id que está sendo passado no parâmetro...
                Lutador vLut = GetDadosLutador(Convert.ToInt32(pLutadoresSel[x]));
                vLutadoresSelecionados_Oitavas.Add(vLut);
            }
        }
Ejemplo n.º 20
0
        public static LutadorViewModel LutadorEntityToViewModel(Lutador lutador)
        {
            if (lutador == null)
            {
                return(new LutadorViewModel());
            }

            var lutadorVm = new LutadorViewModel()
            {
                Nome    = lutador.Nome,
                Apelido = lutador.Apelido
            };

            return(lutadorVm);
        }
        Lutador GetDadosLutador(int pId)
        {
            Lutador vRetLutador = new Lutador();

            //Realiza um loop em cada um dos lutadores
            foreach (var lutador in resultados)
            {
                if (lutador.id == pId)
                {
                    vRetLutador = lutador;
                }
            }

            return(vRetLutador);
        }
Ejemplo n.º 22
0
 private Lutador lutar(Lutador lutador1, Lutador lutador2)
 {
     if (calcularPorcentagemVitorias(lutador1) > calcularPorcentagemVitorias(lutador2))
     {
         return(lutador1);
     }
     else if (calcularPorcentagemVitorias(lutador1) < calcularPorcentagemVitorias(lutador2))
     {
         return(lutador2);
     }
     else
     {
         return(criterioDesempate(lutador1, lutador2));
     }
 }
Ejemplo n.º 23
0
        public void TestarPercentualVitorias()
        {
            // Construir Cenário
            int     PercentualEsperado = 96;
            Lutador lutador            = new Lutador(1, "Balboa", 40, new List <string> {
                "1", "2"
            }, 50, 2, 48);

            // Executar
            lutador.AtualizarPercentualVitorias();

            // Verificar
            int PercentualAtual = lutador.PercentualVitorias;

            Assert.AreEqual(PercentualEsperado, PercentualAtual, "Percentual de Vitórias calculou corretamente.");
        }
        Table CriarTabelaLutador(Lutador pLutador, int cont)
        {
            Table table = new Table();

            table.Width       = 300;
            table.BorderColor = System.Drawing.Color.Black;
            table.BorderStyle = System.Web.UI.WebControls.BorderStyle.Solid;
            table.BorderWidth = 1;

            CheckBox chkLutador = new CheckBox();

            chkLutador.Text = "&nbsp;&nbsp;" + HttpUtility.HtmlDecode(pLutador.nome);
            chkLutador.ID   = "chk_" + pLutador.id;

            // ***** Adiciona Nome ***** //
            TableCell cellNome = new TableCell();

            cellNome.BackColor       = System.Drawing.Color.LightBlue;
            cellNome.HorizontalAlign = HorizontalAlign.Center;
            cellNome.Controls.Add(chkLutador);

            TableRow rowNome = new TableRow();

            rowNome.Cells.Add(cellNome);
            table.Rows.Add(rowNome);

            // ***** Adiciona demais dados ***** //
            TableCell cellDados = new TableCell();

            string[] artesMarciais = pLutador.artesMarciais;

            string vConteudo = "Idade: " + pLutador.idade + "<br>";

            vConteudo     += "Lutas: " + pLutador.lutas + "<br>";
            vConteudo     += "Derrotas: " + pLutador.derrotas + "<br>";
            vConteudo     += "Vitórias: " + pLutador.vitorias + "<br>";
            vConteudo     += "Artes Marciais: " + artesMarciais.Length + "<br>";
            cellDados.Text = vConteudo;

            TableRow rowDados = new TableRow();

            rowDados.Cells.Add(cellDados);

            table.Rows.Add(rowDados);

            return(table);
        }
Ejemplo n.º 25
0
        public void DeveCalcularOPoderDeLuta()
        {
            var forca = (ulong)10_000;
            var chi   = (ulong)100;
            var poderDeLutaExperado = (ulong)1_000_000;

            var lutador = new Lutador("Jhon Doe", forca, chi);

            //Act
            var poderDaLutaCalculado = lutador.CalcularPoderDeLuta();

            Assert.Equal(poderDeLutaExperado, poderDaLutaCalculado);

            //dado
            //quando
            //entao
        }
        public void Joga_desempate_por_numeroLutas()
        {
            var fakeLutador1 = new Lutador(new List <String>(), 1, 0);
            var fakeLutador2 = new Lutador(new List <String>(), 2, 0);
            var fakeJogo     = new Jogo(fakeLutador1, fakeLutador2);

            var resultadoFake = fakeJogo.Joga();

            Assert.Equal(resultadoFake.Vencedor, fakeLutador2);
            Assert.Equal(resultadoFake.Perdedor, fakeLutador1);

            var fakeLutador3   = new Lutador(new List <String>(), 5, 0);
            var fakeJogo2      = new Jogo(fakeLutador3, fakeLutador1);
            var resultadoFake2 = fakeJogo2.Joga();

            Assert.Equal(resultadoFake2.Vencedor, fakeLutador3);
            Assert.Equal(resultadoFake2.Perdedor, fakeLutador1);
        }
Ejemplo n.º 27
0
 private Lutador criterioDesempate(Lutador lutador1, Lutador lutador2)
 {
     if (lutador1.ArtesMarciais.Count > lutador2.ArtesMarciais.Count)
     {
         return(lutador1);
     }
     else if (lutador1.ArtesMarciais.Count < lutador2.ArtesMarciais.Count)
     {
         return(lutador2);
     }
     else if (lutador1.Lutas > lutador2.Lutas)
     {
         return(lutador1);
     }
     else
     {
         return(lutador2);
     }
 }
 public ResultadoFaseDeGrupos(
     Lutador primeiroColocadoGrupoA,
     Lutador segundoColocadoGrupoA,
     Lutador primeiroColocadoGrupoB,
     Lutador segundoColocadoGrupoB,
     Lutador primeiroColocadoGrupoC,
     Lutador segundoColocadoGrupoC,
     Lutador primeiroColocadoGrupoD,
     Lutador segundoColocadoGrupoD,
     List <ResultadoJogo> jogos
     )
 {
     this.PrimeiroColocadoGrupoA = primeiroColocadoGrupoA;
     this.SegundoColocadoGrupoA  = segundoColocadoGrupoA;
     this.PrimeiroColocadoGrupoB = primeiroColocadoGrupoB;
     this.SegundoColocadoGrupoB  = segundoColocadoGrupoB;
     this.PrimeiroColocadoGrupoC = primeiroColocadoGrupoC;
     this.SegundoColocadoGrupoC  = segundoColocadoGrupoC;
     this.PrimeiroColocadoGrupoD = primeiroColocadoGrupoD;
     this.SegundoColocadoGrupoD  = segundoColocadoGrupoD;
     this.Jogos = jogos;
 }
Ejemplo n.º 29
0
        public void TestarCriterioDesempate()
        {
            // Construir Cenário
            Lutador lutador1 = new Lutador(1, "Balboa", 40, new List <string> {
                "Boxe"
            }, 150, 5, 145);
            Lutador lutador2 = new Lutador(2, "Creed", 45, new List <string> {
                "Boxe", "DaRua"
            }, 150, 5, 145);

            // Executar
            lutador1.AtualizarPercentualVitorias();
            lutador2.AtualizarPercentualVitorias();

            Partida partida = new Partida {
                Lutador1 = lutador1, Lutador2 = lutador2
            };

            partida.Lutar();

            // Verificar
            Assert.AreEqual(partida.Vencedor, lutador2, "Lutador 2 Venceu");
        }
 public ResultadoGrupo(Lutador primeiroColocado, Lutador segundoColocado, List <ResultadoJogo> jogos)
 {
     this.PrimeiroColocado = primeiroColocado;
     this.SegundoColocado  = segundoColocado;
     this.Jogos            = jogos;
 }