예제 #1
0
        public void PostReservaDatosNull()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);
            DateTime           checkIn    = new DateTime(2020, 10, 9);
            DateTime           checkOut   = new DateTime(2020, 10, 11);
            const int          intTest    = 1;
            CantHuespedes      huespedes  = new CantHuespedes()
            {
                CantJubilados = 0,
                CantAdultos   = intTest,
                CantBebes     = intTest,
                CantNinios    = intTest,
            };

            HospedajeFiltro filtro = new HospedajeFiltro()
            {
                Huespedes = huespedes,
                CheckIn   = checkIn,
                CheckOut  = checkOut,
            };
            ObjetoPostReserva objeto = new ObjetoPostReserva()
            {
                HospedajeId = intTest, Datos = null, Filtro = filtro
            };

            var result   = controller.Post(intTest, objeto);
            var okResult = result as BadRequestObjectResult;

            logicMock.VerifyAll();
        }
예제 #2
0
        public async Task DeleteCompany()
        {
            //Arrange

            var BDName  = Guid.NewGuid().ToString();
            var context = BuildContext(BDName);

            var fakecompany = new Empresa()
            {
                Nombre   = "Farenet",
                Ruc      = "123456",
                Telefono = "9852412",
                Correo   = "*****@*****.**",
            };

            context.Empresas.Add(fakecompany);
            await context.SaveChangesAsync();

            var context2 = BuildContext(BDName);

            //Act
            var controller = new ReservasController(context2);

            var response = await controller.Delete(1);

            var cancel = response as StatusCodeResult;

            //Assert
            Assert.AreEqual(404, cancel.StatusCode);

            var context3 = BuildContext(BDName);
            var exist    = await context3.Reservas.FindAsync(1);

            Assert.IsNull(exist);
        }
        public async Task vistaDatosReservaPost_ModelIsValid()
        {
            // Arrange
            using (context)
            {
                ///////
                var controller = new ReservasController(context);
                DatosHabitacionReservaViewModel expectedModel = new DatosHabitacionReservaViewModel {
                    idPersona = 2, nombre = "Prueba2", apellidos = "Prueba2 Prueba2", nif = "87654321B", comentarios = "patata", fechaFin = new DateTime(2016, 12, 27), fechaInicio = new DateTime(2016, 12, 25), regimenComida = 1
                };
                // Act
                var result = await controller.vistaDatosReservaPost(new DatosReservaViewModel { idPersona = 2, nombre = "Prueba2", apellidos = "Prueba2 Prueba2", nif = "87654321B", comentarios = "patata", fechaFin = new DateTime(2016, 12, 27), fechaInicio = new DateTime(2016, 12, 25), regimenComida = 1 });

                //Assert
                var viewResult = Assert.IsType <RedirectToActionResult>(result);
                viewResult.ActionName = "vistaSeleccionHabitacionReserva";
                DatosHabitacionReservaViewModel resultado = new DatosHabitacionReservaViewModel {
                    idPersona     = (int)(result as RedirectToActionResult).RouteValues["idPersona"],
                    nombre        = (String)(result as RedirectToActionResult).RouteValues["nombre"],
                    apellidos     = (String)(result as RedirectToActionResult).RouteValues["apellidos"],
                    nif           = (String)(result as RedirectToActionResult).RouteValues["nif"],
                    fechaInicio   = (DateTime)(result as RedirectToActionResult).RouteValues["fechaInicio"],
                    fechaFin      = (DateTime)(result as RedirectToActionResult).RouteValues["fechaFin"],
                    comentarios   = (String)(result as RedirectToActionResult).RouteValues["comentarios"],
                    regimenComida = (int)(result as RedirectToActionResult).RouteValues["regimenComida"]
                };

                Assert.Equal(expectedModel, resultado, Comparer.Get <DatosHabitacionReservaViewModel>((p1, p2) => p1.idPersona == p2.idPersona && p1.nif == p2.nif && p1.comentarios == p2.comentarios && p1.fechaFin == p2.fechaFin && p1.fechaInicio == p2.fechaInicio && p1.regimenComida == p2.regimenComida));
            }
        }
예제 #4
0
        public async Task MakeaReservation()
        {
            //Arrange


            var BDName  = Guid.NewGuid().ToString();
            var context = BuildContext(BDName);


            //Act

            var newreservation = new CreateReservaViewModel()
            {
                Fecha           = "12/03/20",
                Hora            = "12:00",
                Observaciones   = "Color azul",
                VehiculoId      = 1,
                LocalId         = 1,
                ReservaEstadoId = 1,
            };

            var controller = new ReservasController(context);

            var response = await controller.Create(newreservation);

            var reservation = response.Result as StatusCodeResult;

            //Assert

            Assert.IsInstanceOf <OkResult>(reservation);
        }
예제 #5
0
        public void GetReporteConElementoOk()
        {
            var reporteMock               = new Mock <IGenerarReporte>(MockBehavior.Strict);
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            PuntoTuristico punto = new PuntoTuristico()
            {
                Id = 0, Nombre = "Test"
            };
            DatosReporte datos = new DatosReporte()
            {
                PuntoId = punto.Id
            };

            logicMock.Setup(x => x.ObtenerTodos())
            .Returns(new List <Reserva>()
            {
                new Reserva()
                {
                    Id = 0, Hospedaje = new Hospedaje()
                    {
                        Id = 0, PuntoTuristico = punto
                    }, NombreTurista = "Test"
                }
            });

            reporteMock.Setup(x => x.GenerarReporte(datos)).Returns(It.IsAny <List <CantReservasPorHospedaje> >());

            var result   = controller.GetReporte(datos);
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
        }
예제 #6
0
        public void PutAgregarReseniaReservaNoExiste()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            Resenia resenia = new Resenia()
            {
                Puntaje = 1,
                Texto   = "Test",
                Datos   = new DatosUsuario()
                {
                    Apellido = "Test",
                    Nombre   = "ASD",
                    Mail     = "[email protected]"
                }
            };
            Hospedaje hospedaje = new Hospedaje()
            {
                Id = 0,
            };

            logicMockHospedaje.Setup(x => x.AgregarResenia(hospedaje, resenia));
            logicMock.Setup(x => x.ObtenerPorId(0)).Throws(new EntidadNoExisteExcepcion());

            var result   = controller.PutResenia(hospedaje.Id, resenia);
            var okResult = result as NotFoundObjectResult;

            logicMock.VerifyAll();
        }
예제 #7
0
        public void PostReservaFiltroNull()
        {
            string             stringPrueba       = "test";
            var                logicMock          = new Mock <IReserva>(MockBehavior.Strict);
            var                logicMockHospedaje = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller         = new ReservasController(logicMock.Object, logicMockHospedaje.Object);
            DateTime           checkIn            = new DateTime(2020, 10, 9);
            DateTime           checkOut           = new DateTime(2020, 10, 11);
            const int          intTest            = 1;
            DatosUsuario       datos = new DatosUsuario()
            {
                Nombre   = stringPrueba,
                Apellido = stringPrueba,
                Mail     = stringPrueba
            };
            ObjetoPostReserva objeto = new ObjetoPostReserva()
            {
                HospedajeId = intTest, Datos = datos, Filtro = null
            };

            var result   = controller.Post(intTest, objeto);
            var okResult = result as BadRequestObjectResult;

            logicMock.VerifyAll();
        }
예제 #8
0
 public BaseControllerTest()
 {
     fixture     = new Fixture();
     _service    = Substitute.For <IReservaService>();
     _request    = fixture.Create <ObterReservasRequest>();
     _response   = fixture.Create <ObterReservasResponse>();
     _controller = new ReservasController(_logger, _service);
 }
예제 #9
0
        public void DeleteReservaOk()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

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

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

            logicMock.VerifyAll();
        }
예제 #10
0
        public void GetReservaIdNoExiste()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            logicMock.Setup(x => x.ObtenerPorId(It.IsAny <int>())).Throws(new EntidadNoExisteExcepcion());

            var result   = controller.GetPorId(It.IsAny <int>());
            var okResult = result as NotFoundObjectResult;

            logicMock.VerifyAll();
        }
예제 #11
0
        public void GetReservaIdOk()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            logicMock.Setup(x => x.ObtenerPorId(It.IsAny <int>())).Returns(It.IsAny <Reserva>());

            var result   = controller.GetPorId(It.IsAny <int>());
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
        }
예제 #12
0
        public void GetEstadoOk()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            logicMock.Setup(x => x.ConsultarEstado(It.IsAny <int>())).Returns("Creada  Test");

            var result   = controller.GetEstado(It.IsAny <int>());
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
        }
예제 #13
0
 public void ComidaIncluida_ReservaIsNull()
 {
     // Arrange
     using (context)
     {
         var  controller = new ReservasController(context);
         bool exResult   = false;
         // Act
         bool result = controller.ComidaIncluida(null, Regimen.COMPLETA);
         //Assert
         Assert.IsType <bool>(result);
         Assert.Equal(exResult, result);
     }
 }
예제 #14
0
        public void GetAllReservasSinElementoOk()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            logicMock.Setup(x => x.ObtenerTodos())
            .Returns(new List <Reserva>());

            var result   = controller.Get();
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
        }
예제 #15
0
        public void GetReporteSinFecha()
        {
            var reporteMock               = new Mock <IGenerarReporte>(MockBehavior.Strict);
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            logicMock.Setup(x => x.ObtenerTodos()).Returns(new List <Reserva>());
            reporteMock.Setup(x => x.GenerarReporte(It.IsAny <DatosReporte>())).Throws(new FechaVaciaException());

            var result   = controller.GetReporte(It.IsAny <DatosReporte>());
            var okResult = result as BadRequestObjectResult;

            logicMock.VerifyAll();
        }
예제 #16
0
        public void DeleteReservaNoExiste()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            logicMock.Setup(x => x.BorrarReserva(1)).Throws(new EntidadNoExisteExcepcion());

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

            logicMock.VerifyAll();

            Assert.AreEqual(404, okResult.StatusCode);
        }
예제 #17
0
        public void PutModificarEstadodescripcionNull()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            int           id     = 0;
            EstadoReserva estado = EstadoReserva.Aceptada;

            var result   = controller.PutEstado(id, null, estado);
            var okResult = result as BadRequestObjectResult;

            logicMock.VerifyAll();

            Assert.AreEqual(400, okResult.StatusCode);
        }
예제 #18
0
        public void PutModificarEstadoOk()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            int           id     = 1;
            string        desc   = "test";
            EstadoReserva estado = EstadoReserva.Aceptada;

            logicMock.Setup(x => x.ModificarEstado(id, desc, estado));

            var result   = controller.PutEstado(id, desc, estado);
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
        }
        //   [Fact]
        public async Task vistaDatosReservaPostCliente_ModelIsNotValid()
        {
            // Arrange
            using (context)
            {
                var controller = new ReservasController(context);
                controller.ModelState.AddModelError("idPersona", "Required");
                // Act

                /*
                 * var result = await controller.vistaDatosReservaPostCliente(null);
                 * //Assert
                 * var viewResult = Assert.IsType<RedirectToActionResult>(result);
                 * Assert.Equal(viewResult.ActionName, "Index");
                 * Assert.Equal(viewResult.ControllerName, "ClientesController");
                 */
            }
        }
        public async Task vistaDatosReservaPost_ModelIsValid_NotRooms()
        {
            // Arrange
            using (context)
            {
                var controller = new ReservasController(context);
                DatosReservaViewModel expectedModel = new DatosReservaViewModel {
                    idPersona = 2
                };
                // Act
                var result = await controller.vistaDatosReservaPost(new DatosReservaViewModel { idPersona = 2, nombre = "Prueba2", apellidos = "Prueba2 Prueba2", nif = "87654321B", comentarios = "patata", fechaFin = new DateTime(2018, 01, 20), fechaInicio = new DateTime(2018, 01, 10), regimenComida = 1 });

                //Assert
                var viewResult = Assert.IsType <ViewResult>(result);
                DatosReservaViewModel model = (result as ViewResult).Model as DatosReservaViewModel;
                Assert.Equal(expectedModel, model, Comparer.Get <DatosReservaViewModel>((p1, p2) => p1.idPersona == p2.idPersona));
            }
        }
예제 #21
0
        public void PostReservaYaExisteId()
        {
            string             stringPrueba       = "test";
            var                logicMock          = new Mock <IReserva>(MockBehavior.Strict);
            var                logicMockHospedaje = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller         = new ReservasController(logicMock.Object, logicMockHospedaje.Object);
            DateTime           checkIn            = new DateTime(2020, 10, 9);
            DateTime           checkOut           = new DateTime(2020, 10, 11);
            const int          intTest            = 1;
            CantHuespedes      huespedes          = new CantHuespedes()
            {
                CantJubilados = 0,
                CantAdultos   = intTest,
                CantBebes     = intTest,
                CantNinios    = intTest,
            };

            HospedajeFiltro filtro = new HospedajeFiltro()
            {
                Huespedes = huespedes,
                CheckIn   = checkIn,
                CheckOut  = checkOut,
            };

            DatosUsuario datos = new DatosUsuario()
            {
                Nombre   = stringPrueba,
                Apellido = stringPrueba,
                Mail     = stringPrueba
            };

            logicMock.Setup(x => x.Reserva(filtro, intTest, datos)).Returns(It.IsAny <Reserva>());
            logicMock.Setup(x => x.AgregarReserva(It.IsAny <Reserva>())).Throws(new YaExisteLaEntidadExcepcion());

            ObjetoPostReserva objeto = new ObjetoPostReserva()
            {
                HospedajeId = intTest, Datos = datos, Filtro = filtro
            };

            var result   = controller.Post(intTest, objeto);
            var okResult = result as BadRequestObjectResult;

            logicMock.VerifyAll();
        }
        public async Task vistaDatosReservaPost_ModelIsNotValid()
        {
            // Arrange
            using (context)
            {
                var controller = new ReservasController(context);
                controller.ModelState.AddModelError("fechaInicio", "Required");
                DatosReservaViewModel expectedModel = new DatosReservaViewModel {
                    idPersona = 2
                };
                // Act
                var result = await controller.vistaDatosReservaPost(new DatosReservaViewModel { idPersona = 2 });

                //Assert
                var viewResult = Assert.IsType <ViewResult>(result);
                DatosReservaViewModel model = (result as ViewResult).Model as DatosReservaViewModel;
                Assert.Equal(expectedModel, model, Comparer.Get <DatosReservaViewModel>((p1, p2) => p1.idPersona == p2.idPersona));
            }
        }
예제 #23
0
        public async Task vistaDatosReserva()
        {
            // Arrange
            using (context)
            {
                var controller = new ReservasController(context);
                DatosReservaViewModel expectedModel = new DatosReservaViewModel {
                    idPersona = 2, nombre = "Prueba2", apellidos = "Prueba2 Prueba2", nif = "87654321B"
                };

                // Act
                var result = await controller.vistaDatosReserva(2);

                //Assert
                var viewResult = Assert.IsType <ViewResult>(result);
                DatosReservaViewModel model = (result as ViewResult).Model as DatosReservaViewModel;
                Assert.Equal(expectedModel, model, Comparer.Get <DatosReservaViewModel>((p1, p2) => p1.idPersona == p2.idPersona && p1.nif == p2.nif && p1.nombre == p2.nombre && p1.apellidos == p2.apellidos));
            }
        }
예제 #24
0
        public async Task ListReservations()
        {
            //Arrange

            var BDName  = Guid.NewGuid().ToString();
            var context = BuildContext(BDName);

            var fakereservation = new Reserva()
            {
                Fecha         = "12/03/20",
                Hora          = "12:00",
                Observaciones = "Color azul",
                VehiculoId    = 1,
                LocalId       = 1
            };

            var fakereservation2 = new Reserva()
            {
                Fecha         = "12/03/21",
                Hora          = "15:00",
                Observaciones = "Color rosa",
                VehiculoId    = 2,
                LocalId       = 1
            };



            context.Reservas.Add(fakereservation);
            context.Reservas.Add(fakereservation2);
            await context.SaveChangesAsync();

            var context2 = BuildContext(BDName);

            //Act
            var controller = new ReservasController(context2);

            var response = await controller.List();


            //Assert
            Assert.IsNotNull(response);
        }
예제 #25
0
        public void PutModificarEstadoNoExiste()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            int           id     = 0;
            string        desc   = "test";
            EstadoReserva estado = EstadoReserva.Aceptada;

            logicMock.Setup(x => x.ModificarEstado(id, desc, estado)).
            Throws(new EntidadNoExisteExcepcion());

            var result   = controller.PutEstado(id, desc, estado);
            var okResult = result as NotFoundObjectResult;

            logicMock.VerifyAll();

            Assert.AreEqual(404, okResult.StatusCode);
        }
        // [Fact]
        public async Task vistaDatosReservaPostCliente_ModelIsValid()
        {
            // Arrange
            using (context)
            {
                Cliente expectedModel = new Cliente {
                    idPersona = 1, nombre = "Prueba1", apellidos = "Prueba1 Prueba1", telefono = "666666666", correoElectronico = "*****@*****.**", nif = "12345678A", numeroTarjeta = "4444333322221111"
                };
                var controller = new ReservasController(context);
                // Act

                /*
                 * var result = await controller.vistaDatosReservaPostCliente(new Cliente { idPersona = 1, nombre = "Prueba1", apellidos = "Prueba1 Prueba1", telefono = "666666666", correoElectronico = "*****@*****.**", nif = "12345678A", numeroTarjeta = "4444333322221111" });
                 * //Assert
                 * var viewResult = Assert.IsType<ViewResult>(result);
                 * Cliente model = (result as ViewResult).Model as Cliente;
                 * Assert.Equal(expectedModel, model, Comparer.Get<Cliente>((p1, p2) => p1.idPersona == p2.idPersona));
                 */
            }
        }
        public async Task vistaSeleccionHabitacionReservaPost_ModelIsNotValid()
        {
            // Arrange
            using (context)
            {
                var controller = new ReservasController(context);
                controller.ModelState.AddModelError("habitacionesSeleccionadas", "Required");
                DatosHabitacionReservaViewModel entrada = new DatosHabitacionReservaViewModel
                {
                    idPersona     = 2,
                    nombre        = "Prueba2",
                    apellidos     = "Prueba2 Prueba2",
                    nif           = "87654321B",
                    comentarios   = "patata",
                    fechaFin      = new DateTime(2016, 11, 26),
                    fechaInicio   = new DateTime(2016, 11, 24),
                    regimenComida = 1,
                    Descuentos    = new Descuento[1] {
                        new Descuento {
                            idDescuento = 2
                        }
                    },
                    Habitaciones = new Habitacion[1] {
                        new Habitacion {
                            numero = 2
                        }
                    },
                };

                // Act
                var result = await controller.vistaSeleccionHabitacionReservaPost(entrada);

                //Assert
                var viewResult = Assert.IsType <ViewResult>(result);
                DatosHabitacionReservaViewModel model = (result as ViewResult).Model as DatosHabitacionReservaViewModel;
                Assert.Equal(entrada, model, Comparer.Get <DatosHabitacionReservaViewModel>((p1, p2) => p1 == p2));
            }
        }
예제 #28
0
        public void ComidaIncluida_InvalidBoard()
        {
            // Arrange
            using (context)
            {
                var     controller = new ReservasController(context);
                bool    exResult   = false;
                Reserva reserva    = new Reserva
                {
                    idReserva     = 1,
                    fechaInicio   = DateTime.Today.AddDays(-1),
                    fechaFin      = DateTime.Today.AddDays(1),
                    regimenComida = Regimen.MEDIA
                };

                // Act
                bool result = controller.ComidaIncluida(reserva, Regimen.INVALIDO);

                //Assert
                Assert.IsType <bool>(result);
                Assert.Equal(exResult, result);
            }
        }
예제 #29
0
        public void PutAgregarReseniaPuntajeFueraDeRango()
        {
            var logicMock                 = new Mock <IReserva>(MockBehavior.Strict);
            var logicMockHospedaje        = new Mock <IHospedaje>(MockBehavior.Strict);
            ReservasController controller = new ReservasController(logicMock.Object, logicMockHospedaje.Object);

            Resenia resenia = new Resenia()
            {
                Puntaje = 10,
                Texto   = "Test",
                Datos   = new DatosUsuario()
                {
                    Apellido = "Test",
                    Nombre   = "ASD",
                    Mail     = "[email protected]"
                }
            };
            Hospedaje hospedaje = new Hospedaje()
            {
                Id = 0,
            };
            Reserva reserva = new Reserva()
            {
                Id = 0,
                ApellidoTurista = "Test",
                NombreTurista   = "Test",
                Hospedaje       = hospedaje,
            };

            logicMockHospedaje.Setup(x => x.AgregarResenia(hospedaje, resenia)).Throws(new PuntajeFueraDeRangoException());
            logicMock.Setup(x => x.ObtenerPorId(reserva.Id)).Returns(reserva);

            var result   = controller.PutResenia(hospedaje.Id, resenia);
            var okResult = result as BadRequestObjectResult;

            logicMock.VerifyAll();
        }
예제 #30
0
        public async Task CancelReservation()
        {
            //Arrange

            var BDName  = Guid.NewGuid().ToString();
            var context = BuildContext(BDName);

            var fakereservation = new Reserva()
            {
                Fecha         = "12/03/20",
                Hora          = "12:00",
                Observaciones = "Color azul",
                VehiculoId    = 1,
                LocalId       = 1
            };

            context.Reservas.Add(fakereservation);
            await context.SaveChangesAsync();

            var context2 = BuildContext(BDName);

            //Act
            var controller = new ReservasController(context2);

            var response = await controller.Delete(1);

            var cancel = response as StatusCodeResult;

            //Assert
            Assert.AreEqual(200, cancel.StatusCode);

            var context3 = BuildContext(BDName);
            var exist    = await context3.Reservas.FindAsync(1);

            Assert.IsNull(exist);
        }