Exemple #1
0
 public void ConectarPuntos(TableroDTO grilla, PuntoDTO punto)
 {
     ObtenerPuntoIzquierda(grilla, punto);
     ObtenerPuntoDerecha(grilla, punto);
     ObtenerPuntoAbajo(grilla, punto);
     ObtenerPuntoArriba(grilla, punto);
 }
Exemple #2
0
        public void CuandoIngresaIdPuntoInexistenteRetornaError()
        {
            string idPunto = "Z100";

            TableroDTO tablero = _tablero.CrearTablero(9);

            PuntoDTO puntoObtenido = _tablero.ObtenerPuntoPorId(tablero, idPunto);
        }
Exemple #3
0
 private void ObtenerPuntoAbajo(TableroDTO grilla, PuntoDTO punto)
 {
     try
     {
         PuntoDTO puntoAbajo = ObtenerPuntoPorCoordenadas(grilla, punto.x, punto.y - 1);
         punto.puntosConectados.Add(puntoAbajo);
     }
     catch (Exception) { }
 }
Exemple #4
0
        public void CuandoIngresaCoordenadasDePuntoInexistenteRetornaError()
        {
            TableroDTO grilla3x3 = _grilla.CrearGrillaConTamaño(3);

            int x = 4;
            int y = 4;

            PuntoDTO puntoRetornado = _grilla.ObtenerPuntoPorCoordenadas(grilla3x3, x, y);
        }
Exemple #5
0
 private void ObtenerPuntoIzquierda(TableroDTO grilla, PuntoDTO punto)
 {
     try
     {
         PuntoDTO puntoIzquierda = ObtenerPuntoPorCoordenadas(grilla, punto.x - 1, punto.y);
         punto.puntosConectados.Add(puntoIzquierda);
     }
     catch (Exception) {}
 }
Exemple #6
0
        public void CuandoIngresaPuntosConectadosRetornaSusPuntosConectados()
        {
            PuntoDTO punto = _punto.CrearPunto(1, 1);

            _punto.AdicionarPuntoConectado(punto, _punto.CrearPunto(2, 1));
            _punto.AdicionarPuntoConectado(punto, _punto.CrearPunto(1, 2));

            Assert.AreEqual(punto.puntosConectados[0].id, "B1");
            Assert.AreEqual(punto.puntosConectados[1].id, "A2");
        }
Exemple #7
0
        public void CuandoIngresaIdPuntoRetornaPuntoDTO()
        {
            string idPunto = "A1";

            TableroDTO tablero = _tablero.CrearTablero(9);

            PuntoDTO puntoObtenido = _tablero.ObtenerPuntoPorId(tablero, idPunto);

            Assert.AreEqual(idPunto, puntoObtenido.id);
        }
Exemple #8
0
        public PiedraDTO JugarPiedra(PuntoDTO punto, int turno)
        {
            PiedraDTO piedraDTO = new PiedraDTO
            {
                punto = punto,
                turno = turno
            };

            return(piedraDTO);
        }
Exemple #9
0
        public void CuandoIngresaCoordenadasDelPuntoRetornaPuntoDTO()
        {
            TableroDTO grilla3x3 = _grilla.CrearGrillaConTamaño(3);

            int x = 1;
            int y = 2;

            PuntoDTO puntoRetornado = _grilla.ObtenerPuntoPorCoordenadas(grilla3x3, x, y);

            Assert.AreEqual("A2", puntoRetornado.id);
        }
Exemple #10
0
        public void CuandoIngresaPuntoRetornaPuntosConectados()
        {
            TableroDTO grilla3x3 = _grilla.CrearGrillaConTamaño(3);

            PuntoDTO puntoA1 = _grilla.ObtenerPuntoPorCoordenadas(grilla3x3, 1, 1);

            _grilla.ConectarPuntos(grilla3x3, puntoA1);

            Assert.AreEqual(2, puntoA1.puntosConectados.Count);
            Assert.IsTrue(puntoA1.puntosConectados.Any(punto => punto.id == "A2"));
            Assert.IsTrue(puntoA1.puntosConectados.Any(punto => punto.id == "B1"));
        }
Exemple #11
0
        public PuntoDTO ObtenerPuntoPorId(TableroDTO tablero, string idPunto)
        {
            PuntoDTO puntoDTO = tablero.puntos
                                .Where(punto => punto.id == idPunto)
                                .FirstOrDefault();

            if (puntoDTO == null)
            {
                throw new Exception("El punto no existe en el tablero.");
            }

            return(puntoDTO);
        }
Exemple #12
0
        public PuntoDTO ObtenerPuntoPorCoordenadas(TableroDTO grilla, int x, int y)
        {
            PuntoDTO puntoDTO = grilla.puntos.Where(punto => punto.x == x &&
                                                    punto.y == y)
                                .FirstOrDefault();

            if (puntoDTO == null)
            {
                throw new Exception("El punto no pertenece al tablero.");
            }

            return(puntoDTO);
        }
Exemple #13
0
        public PuntoDTO CrearPunto(int x, int y)
        {
            string letra = Convert.ToChar(BaseAsciiLetras + x).ToString();
            string id    = letra + y;

            PuntoDTO punto = new PuntoDTO()
            {
                id = id,
                x  = x,
                y  = y,
                puntosConectados = new List <PuntoDTO>()
            };

            return(punto);
        }
Exemple #14
0
        public void CuandoJugadorUbicaPiedraCreaPiedraDTO()
        {
            PuntoDTO puntoRetornado = new PuntoDTO {
                id = "A1", x = 1, y = 1
            };
            PiedraDTO piedraDTO = new PiedraDTO
            {
                turno = 1,
                punto = puntoRetornado
            };

            int       turno        = 1;
            PiedraDTO piedraJugada = _piedra.JugarPiedra(puntoRetornado, turno);

            Assert.AreEqual(puntoRetornado.id, piedraJugada.punto.id);
        }
Exemple #15
0
        public void CuandoIngresaCoordenadas_2_1_CreaPuntoB1()
        {
            PuntoDTO puntoEsperado = new PuntoDTO()
            {
                id = "B1",
                x  = 2,
                y  = 1
            };

            int x = 2;
            int y = 1;

            PuntoDTO puntoActual = _punto.CrearPunto(x, y);

            Assert.AreEqual(puntoEsperado.id, puntoActual.id);
            Assert.AreEqual(puntoEsperado.x, puntoActual.x);
            Assert.AreEqual(puntoEsperado.y, puntoActual.y);
        }
Exemple #16
0
        public TableroDTO CrearGrillaConTamaño(int tamaño)
        {
            TableroDTO grilla = new TableroDTO();

            grilla.tamaño = tamaño;
            grilla.puntos = new List <PuntoDTO>();
            PuntoDTO puntoDTO = new PuntoDTO();

            for (int posicionX = 1; posicionX <= tamaño; posicionX++)
            {
                for (int posicionY = 1; posicionY <= tamaño; posicionY++)
                {
                    puntoDTO = _punto.CrearPunto(posicionX, posicionY);
                    grilla.puntos.Add(puntoDTO);
                }
            }
            grilla.cantidadPuntos = grilla.puntos.Count;
            return(grilla);
        }
Exemple #17
0
        public void Crear(PartidaDTO partidaDTO, string idPunto)
        {
            JugadorDTO jugadorActivo      = _partida.ObtenerJugadorActivo(partidaDTO);
            Color      colorJugadorActivo = jugadorActivo.color;

            PuntoDTO puntoJugado = _tablero.ObtenerPuntoPorId(partidaDTO.tablero, idPunto);

            partidaDTO.jugadas.Add(_jugada.CrearJugada(colorJugadorActivo, idPunto, jugadorActivo.turno));

            PiedraDTO piedraJugada = _piedra.JugarPiedra(puntoJugado, jugadorActivo.turno);

            if (colorJugadorActivo == Color.Negro)
            {
                partidaDTO.piedrasNegras.Add(piedraJugada);
            }
            else
            {
                partidaDTO.piedrasBlancas.Add(piedraJugada);
            }

            _partida.CambiarJugadorActivo(partidaDTO);
        }
Exemple #18
0
 public void AdicionarPuntoConectado(PuntoDTO punto, PuntoDTO puntoConectado)
 {
     punto.puntosConectados.Add(puntoConectado);
 }