Exemple #1
0
        public void PutPuntoNoExiste()
        {
            var logicMock                  = new Mock <IPuntoTuristico>(MockBehavior.Strict);
            var logicRegionMock            = new Mock <IRegion>(MockBehavior.Strict);
            PuntosController    controller = new PuntosController(logicMock.Object, logicRegionMock.Object);
            PuntoTuristicoModel puntoModel = new PuntoTuristicoModel()
            {
                Nombre      = "Este",
                Descripcion = "Prueba",
            };
            PuntoTuristico punto = new PuntoTuristico()
            {
                Nombre      = puntoModel.Nombre,
                Descripcion = puntoModel.Descripcion,
                Id          = 0,
            };

            logicMock.Setup(x => x.ActualizarPunto(punto.Id, punto)).Throws(new EntidadNoExisteExcepcion());

            var result   = controller.Put(punto.Id, punto);
            var okResult = result as NotFoundObjectResult;

            logicMock.VerifyAll();

            Assert.AreEqual(404, okResult.StatusCode);
        }
Exemple #2
0
        public void PostPuntoDescripcionMaxCaracteresNoValido()
        {
            var logicMock                  = new Mock <IPuntoTuristico>(MockBehavior.Strict);
            var logicRegionMock            = new Mock <IRegion>(MockBehavior.Strict);
            PuntosController    controller = new PuntosController(logicMock.Object, logicRegionMock.Object);
            PuntoTuristicoModel puntoModel = new PuntoTuristicoModel()
            {
                Nombre      = "Este",
                Descripcion = "Prueba",
            };
            PuntoTuristico punto = new PuntoTuristico()
            {
                Nombre      = puntoModel.Nombre,
                Descripcion = puntoModel.Descripcion,
                Id          = 0,
            };

            logicMock.Setup(x => x.PuntoTuristico(puntoModel.Nombre, puntoModel.Descripcion))
            .Throws(new MaxCantDeCaracteresException());

            var result   = controller.Post(1, puntoModel);
            var okResult = result as BadRequestObjectResult;

            logicMock.VerifyAll();

            Assert.AreEqual(400, okResult.StatusCode);
        }
Exemple #3
0
        public void PutPuntoOk()
        {
            var logicMock                  = new Mock <IPuntoTuristico>(MockBehavior.Strict);
            var logicRegionMock            = new Mock <IRegion>(MockBehavior.Strict);
            PuntosController    controller = new PuntosController(logicMock.Object, logicRegionMock.Object);
            PuntoTuristicoModel puntoModel = new PuntoTuristicoModel()
            {
                Nombre      = "Este",
                Descripcion = "Prueba",
            };
            PuntoTuristico punto = new PuntoTuristico()
            {
                Nombre      = puntoModel.Nombre,
                Descripcion = puntoModel.Descripcion,
                Id          = 0,
            };

            logicMock.Setup(x => x.PuntoTuristico(puntoModel.Nombre, puntoModel.Descripcion)).Returns(punto);
            logicMock.Setup(x => x.AgregarPunto(punto));
            controller.Post(0, puntoModel);
            punto.Nombre = "prueba";
            logicMock.Setup(x => x.ActualizarPunto(punto.Id, punto));

            var result   = controller.Put(punto.Id, punto);
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
            Assert.AreEqual("prueba", punto.Nombre);
        }
Exemple #4
0
        public void DeletePuntoOk()
        {
            var logicMock                  = new Mock <IPuntoTuristico>(MockBehavior.Strict);
            var logicRegionMock            = new Mock <IRegion>(MockBehavior.Strict);
            PuntosController    controller = new PuntosController(logicMock.Object, logicRegionMock.Object);
            PuntoTuristicoModel puntoModel = new PuntoTuristicoModel()
            {
                Nombre      = "Este",
                Descripcion = "Prueba",
            };
            PuntoTuristico punto = new PuntoTuristico()
            {
                Nombre      = puntoModel.Nombre,
                Descripcion = puntoModel.Descripcion,
                Id          = 0,
            };

            logicMock.Setup(x => x.PuntoTuristico(puntoModel.Nombre, puntoModel.Descripcion)).Returns(punto);
            logicMock.Setup(x => x.AgregarPunto(punto));


            controller.Post(1, puntoModel);

            logicMock.Setup(x => x.BorrarPuntoId(1));

            var result   = controller.Delete(1);
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
        }
Exemple #5
0
        public void GetPuntosConElementoOk()
        {
            var logicMock                  = new Mock <IPuntoTuristico>(MockBehavior.Strict);
            var logicRegionMock            = new Mock <IRegion>(MockBehavior.Strict);
            PuntosController    controller = new PuntosController(logicMock.Object, logicRegionMock.Object);
            PuntoTuristicoModel puntoModel = new PuntoTuristicoModel()
            {
                Nombre      = "Este",
                Descripcion = "Prueba",
            };
            PuntoTuristico punto = new PuntoTuristico()
            {
                Nombre      = puntoModel.Nombre,
                Descripcion = puntoModel.Descripcion,
                Id          = 0,
            };
            List <PuntoTuristico> lista = new List <PuntoTuristico>();

            lista.Add(punto);

            logicMock.Setup(x => x.PuntoTuristico(puntoModel.Nombre, puntoModel.Descripcion))
            .Returns(punto);
            logicMock.Setup(x => x.AgregarPunto(punto));
            logicMock.Setup(x => x.ObtenerTodos()).Returns(lista);

            controller.Post(1, puntoModel);

            var result   = controller.Get();
            var okResult = result as OkObjectResult;
            var retorno  = okResult.Value as List <PuntoTuristicoModel>;

            logicMock.VerifyAll();
        }
 public IActionResult Post(int id, [FromBody] PuntoTuristicoModel puntoModel)
 {
     try
     {
         PuntoTuristico punto = logica.PuntoTuristico
                                    (puntoModel.Nombre, puntoModel.Descripcion);
         punto.Id = id;
         if (puntoModel.Imagen != null)
         {
             punto.Imagen = puntoModel.Imagen;
         }
         logica.AgregarPunto(punto);
         return(Ok(punto));
     }
     catch (NombreNoValidoException)
     {
         return(BadRequest("Nombre no valido"));
     }
     catch (MaxCantDeCaracteresException)
     {
         return(BadRequest("La descripcion supera " +
                           "la cantidad de caracteres"));
     }
 }
Exemple #7
0
        public void GetPuntosPorCategoriaOk()
        {
            var logicMock                  = new Mock <IPuntoTuristico>(MockBehavior.Strict);
            var logicRegionMock            = new Mock <IRegion>(MockBehavior.Strict);
            PuntosController    controller = new PuntosController(logicMock.Object, logicRegionMock.Object);
            PuntoTuristicoModel puntoModel = new PuntoTuristicoModel()
            {
                Nombre      = "Este",
                Descripcion = "Prueba",
            };
            PuntoTuristico punto = new PuntoTuristico()
            {
                Nombre      = puntoModel.Nombre,
                Descripcion = puntoModel.Descripcion,
                PuntosTuristicosCategoria = new List <PuntoTuristicoCategoria>(),
                Id = 1,
            };
            PuntoTuristicoModel puntoModel2 = new PuntoTuristicoModel()
            {
                Nombre      = "Este2",
                Descripcion = "Prueba2",
            };
            PuntoTuristico punto2 = new PuntoTuristico()
            {
                Nombre      = puntoModel2.Nombre,
                Descripcion = puntoModel2.Descripcion,
                PuntosTuristicosCategoria = new List <PuntoTuristicoCategoria>(),
                Id = 2,
            };
            Categoria categoria = new Categoria()
            {
                Id     = 1,
                Nombre = "playa",
                PuntosTuristicosCategoria = new List <PuntoTuristicoCategoria>()
            };
            PuntoTuristicoCategoria ptc = new PuntoTuristicoCategoria()
            {
                PuntoTuristico   = punto,
                PuntoTuristicoId = punto.Id,
                Categoria        = categoria,
                CategoriaId      = categoria.Id,
            };

            punto.PuntosTuristicosCategoria.Add(ptc);
            Region region = new Region()
            {
                Id     = 0,
                Nombre = "Este",
                Puntos = new List <PuntoTuristico>()
                {
                    punto,
                    punto2,
                },
            };
            List <PuntoTuristico> listaPorRegion = new List <PuntoTuristico>()
            {
                punto, punto2
            };
            List <PuntoTuristico> listaPorCategoria = new List <PuntoTuristico>()
            {
                punto
            };
            List <string> listaNombreCategoria = new List <string>()
            {
                categoria.Nombre,
            };

            int[] categoriasABuscar = new int[] { categoria.Id, };

            logicMock.Setup(x => x.PuntoTuristico(puntoModel.Nombre, puntoModel.Descripcion))
            .Returns(punto);

            logicMock.Setup(x => x.AgregarPunto(punto));

            logicMock.Setup(x => x.PuntoTuristico(puntoModel2.Nombre, puntoModel2.Descripcion))
            .Returns(punto2);
            logicMock.Setup(x => x.AgregarPunto(punto2));
            logicRegionMock.Setup(x => x.ObtenerPuntosTuristicos(region.Id))
            .Returns(listaPorRegion);
            logicMock.Setup(x => x.PuntosPorCategoria(listaPorRegion, categoriasABuscar))
            .Returns(listaPorCategoria);

            controller.Post(punto.Id, puntoModel);

            controller.Post(punto2.Id, puntoModel2);

            var result   = controller.GetCategorias(categoriasABuscar, region.Id);
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
        }