public void PostHospedajeNombreVacioEspacio() { string stringPrueba = "Test"; int intPrueba = 5; var logicMock = new Mock <IHospedaje>(MockBehavior.Strict); HospedajesController controller = new HospedajesController(logicMock.Object); HospedajeModel hospedajeModel = new HospedajeModel() { NombreHospedaje = stringPrueba, Descripcion = stringPrueba, Direccion = stringPrueba, CantidadEstrellas = intPrueba, Capacidad = intPrueba, PrecioPorNoche = intPrueba, PrecioTotalPeriodo = intPrueba, Imagenes = new List <Imagen>() { new Imagen() { Ruta = stringPrueba, Id = intPrueba } }, }; Hospedaje hospedaje = hospedajeModel.ToEntity(); logicMock.Setup(x => x.AgregarHospedaje(It.IsAny <Hospedaje>())). Throws(new NombreNoValidoException()); var result = controller.Post(1, hospedajeModel); var okResult = result as BadRequestObjectResult; logicMock.VerifyAll(); Assert.AreEqual(400, okResult.StatusCode); }
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(); }
public void BorrarHospedaje(int id) { Hospedaje hospedaje = this.repository.Get(id); repository.Delete(hospedaje); repository.Save(); }
public void GetHospedajeIdOk() { string stringPrueba = "Test"; int intPrueba = 5; var logicMock = new Mock <IHospedaje>(MockBehavior.Strict); HospedajesController controller = new HospedajesController(logicMock.Object); HospedajeModel hospedajeModel = new HospedajeModel() { NombreHospedaje = stringPrueba, Descripcion = stringPrueba, Direccion = stringPrueba, CantidadEstrellas = intPrueba, Capacidad = intPrueba, PrecioPorNoche = intPrueba, PrecioTotalPeriodo = intPrueba, Imagenes = new List <Imagen>() { new Imagen() { Ruta = stringPrueba, Id = intPrueba } }, }; Hospedaje hospedaje = hospedajeModel.ToEntity(); logicMock.Setup(x => x.ObtenerPorId(1)).Returns(hospedaje); var result = controller.GetPorId(1); var okResult = result as OkObjectResult; var retorno = okResult.Value as Hospedaje; logicMock.VerifyAll(); Assert.AreEqual(hospedajeModel.NombreHospedaje, retorno.NombreHospedaje); }
public void CalcularPromedioSinResenia() { var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); Hospedaje hospedaje = new Hospedaje() { Id = 0, Ocupado = false, PuntoTuristico = new PuntoTuristico(), NombreHospedaje = "Hotel X", Descripcion = "Test", Direccion = "Test", CantidadEstrellas = 2, Capacidad = 5, PrecioPorNoche = 140, PrecioTotalPeriodo = 200, Imagenes = new List <Imagen>() { new Imagen() { Id = 0, Ruta = "test.jpg", }, }, Resenias = new List <Resenia>(), }; repoMock.Setup(x => x.Get(hospedaje.Id)).Returns(hospedaje); Assert.Throws <NoHayReseniaException>(() => logica.CalcularPromedio(hospedaje)); }
public void TestBorrarSegunPuntoOk() { string nombre = "AAA"; var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); PuntoTuristico punto = new PuntoTuristico() { Id = 0 }; Hospedaje hospedaje = new Hospedaje() { NombreHospedaje = nombre, Id = 0 }; Hospedaje hospedaje2 = new Hospedaje() { NombreHospedaje = nombre, Id = 1, PuntoTuristico = punto }; repoMock.Setup(x => x.Delete(hospedaje2)); repoMock.Setup(x => x.Save()); repoMock.Setup(x => x.Get(hospedaje2.Id)).Returns(hospedaje2); repoMock.Setup(x => x.GetAll()).Returns(new List <Hospedaje>() { hospedaje, hospedaje2 }); logica.BorrarHospedajeSegunPunto(punto.Id); repoMock.Setup(x => x.GetAll()).Returns(new List <Hospedaje>() { hospedaje }); List <Hospedaje> puntos = logica.ObtenerTodos(); Assert.AreEqual(1, puntos.Count); }
public void TestCrearReservaValido() { CantHuespedes huespedes = new CantHuespedes() { CantAdultos = 1, CantBebes = 1, CantNinios = 1, CantJubilados = 0, }; HospedajeFiltro filtro = new HospedajeFiltro() { Huespedes = huespedes, CheckIn = new DateTime(2020, 10, 2), CheckOut = new DateTime(2020, 10, 2), }; Hospedaje hospedaje = new Hospedaje() { Id = 0 }; DatosUsuario datosTurista = new DatosUsuario() { Apellido = "test", Nombre = "Prueba", Mail = "test" }; var logicaHospedajeMock = new Mock <IHospedaje>(MockBehavior.Strict); var repoMock = new Mock <IRepository <Reserva> >(MockBehavior.Strict); Reserva_Logic logica = new Reserva_Logic(repoMock.Object, logicaHospedajeMock.Object); logicaHospedajeMock.Setup(x => x.ObtenerPorId(0)).Returns(hospedaje); logicaHospedajeMock.Setup(x => x.ActualizarHospedaje(hospedaje)); Reserva reserva = logica.Reserva(filtro, hospedaje.Id, datosTurista); Assert.AreEqual(hospedaje.Id, reserva.Hospedaje.Id); }
public void PostHospedajeOk() { string stringPrueba = "Test"; int intPrueba = 5; var logicMock = new Mock <IHospedaje>(MockBehavior.Strict); HospedajesController controller = new HospedajesController(logicMock.Object); HospedajeModel hospedajeModel = new HospedajeModel() { NombreHospedaje = stringPrueba, Descripcion = stringPrueba, Direccion = stringPrueba, CantidadEstrellas = intPrueba, Capacidad = intPrueba, PrecioPorNoche = intPrueba, PrecioTotalPeriodo = intPrueba, Imagenes = new List <Imagen>() { new Imagen() { Ruta = stringPrueba, Id = intPrueba } }, }; Hospedaje hospedaje = hospedajeModel.ToEntity(); logicMock.Setup(x => x.AgregarHospedaje(It.IsAny <Hospedaje>())); var result = controller.Post(1, hospedajeModel); var okResult = result as OkObjectResult; var hospedajeRet = okResult.Value as Hospedaje; logicMock.VerifyAll(); Assert.AreEqual(stringPrueba, hospedajeRet.NombreHospedaje); }
public void BuscarPuntoIdValidoOcupado() { List <Imagen> imagenes = new List <Imagen>() { new Imagen() { Id = 0, Ruta = "test.jpg", }, }; var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); PuntoTuristico punto = new PuntoTuristico() { Nombre = "Prueba", Descripcion = "DASD", Imagen = imagenes.First(), Id = 0, PuntosTuristicosCategoria = new List <PuntoTuristicoCategoria>(), }; Hospedaje hospedaje = new Hospedaje() { Id = 0, NombreHospedaje = "Hotel X", Descripcion = "Test", Direccion = "Test", CantidadEstrellas = 2, Capacidad = 5, PrecioPorNoche = 140, PrecioTotalPeriodo = 200, Imagenes = imagenes, Ocupado = true, PuntoTuristico = punto, }; List <Hospedaje> lista = new List <Hospedaje>() { hospedaje }; repoMock.Setup(x => x.GetAll()).Returns(lista); CantHuespedes huespedes = new CantHuespedes() { CantAdultos = 1, CantBebes = 0, CantNinios = 1, CantJubilados = 0, }; HospedajeFiltro filtro = new HospedajeFiltro() { Huespedes = huespedes, CheckIn = new DateTime(2020, 10, 9), CheckOut = new DateTime(2020, 10, 11), }; List <Hospedaje> retorno = logica.BuscarHospedajePunto(punto.Id, filtro); Assert.AreEqual(0, retorno.Count); }
private static bool TienePunto(int puntoId, Hospedaje hospedaje) { if (TieneUnPuntoAsociado(hospedaje)) { return(puntoId == hospedaje.PuntoTuristico.Id); } return(false); }
private void SetearHospedaje(int hospedajeId, Reserva retorno) { Hospedaje hospedaje = this.logicaHospedaje.ObtenerPorId(hospedajeId); hospedaje.Ocupado = true; logicaHospedaje.ActualizarHospedaje(hospedaje); retorno.Hospedaje = hospedaje; }
public void AgregarPunto(int hospedajeId, int puntoId) { Hospedaje hospedaje = this.ObtenerPorId(hospedajeId); PuntoTuristico punto = this.logicaPunto.ObtenerPuntoId(puntoId); hospedaje.PuntoTuristico = punto; this.ActualizarHospedaje(hospedaje); }
public void GetHospedajesPorPuntoYFiltroOk() { string stringPrueba = "Test"; int intPrueba = 5; int puntoId = 0; var logicMock = new Mock <IHospedaje>(MockBehavior.Strict); HospedajesController controller = new HospedajesController(logicMock.Object); HospedajeModel hospedajeModel = new HospedajeModel() { NombreHospedaje = stringPrueba, Descripcion = stringPrueba, Direccion = stringPrueba, CantidadEstrellas = intPrueba, Capacidad = intPrueba, PrecioPorNoche = intPrueba, PrecioTotalPeriodo = intPrueba, Imagenes = new List <Imagen>() { new Imagen() { Ruta = stringPrueba, Id = intPrueba } }, }; Hospedaje hospedaje = hospedajeModel.ToEntity(); hospedaje.PuntoTuristico = new PuntoTuristico() { Id = puntoId, Nombre = "Test" }; CantHuespedes huespedes = new CantHuespedes() { CantJubilados = 0, CantAdultos = 1, CantBebes = 0, CantNinios = 1, }; HospedajeFiltro filtro = new HospedajeFiltro() { Huespedes = huespedes, CheckIn = new DateTime(2020, 10, 9), CheckOut = new DateTime(2020, 10, 19), }; logicMock.Setup(x => x.BuscarHospedajePunto(puntoId, filtro)). Returns(new List <Hospedaje>() { hospedaje }); var result = controller.GetFiltro(puntoId, filtro); var okResult = result as OkObjectResult; var retorno = okResult.Value as List <Hospedaje>; logicMock.VerifyAll(); Assert.AreEqual(1, retorno.Count); }
public void AgregarResenia(Hospedaje hospedajeNuevo, Resenia resenia) { Hospedaje hospedaje = this.repository.GetAll().Where(x => x.Id == hospedajeNuevo.Id).FirstOrDefault(); hospedaje.Resenias.Add(resenia); hospedaje.Puntaje = CalcularPromedio(hospedaje); this.repository.Update(hospedaje); this.repository.Save(); }
public void TestGenerarReporteOk() { List <CantReservasPorHospedaje> lista = new List <CantReservasPorHospedaje>(); var logicaReservaMock = new Mock <IReserva>(MockBehavior.Strict); IGenerarReporte generador = new GenerarReporteConcretoA(logicaReservaMock.Object); PuntoTuristico punto = new PuntoTuristico() { Id = 0, Nombre = "Test" }; DateTime inicio = new DateTime(2020, 10, 9); DateTime fin = new DateTime(2020, 10, 19); EstadoReserva estado = EstadoReserva.Creada; DatosReporte datos = new DatosReporte() { PuntoId = punto.Id, Inicio = inicio, Fin = fin }; Hospedaje hospedaje1 = new Hospedaje() { NombreHospedaje = "Hospedaje1", PuntoTuristico = punto }; Hospedaje hospedaje2 = new Hospedaje() { NombreHospedaje = "Hospedaje2", PuntoTuristico = punto }; Reserva reserva1 = new Reserva() { Hospedaje = hospedaje1, CheckIn = inicio, CheckOut = fin, Estado = estado }; Reserva reserva2 = new Reserva() { Hospedaje = hospedaje1, CheckIn = inicio, CheckOut = fin, Estado = estado }; Reserva reserva3 = new Reserva() { Hospedaje = hospedaje2, CheckIn = inicio, CheckOut = fin, Estado = estado }; bool condicionCantElem = false; bool condicionElemOrd = false; bool condicion = false; List <Reserva> reservas = new List <Reserva>(); reservas.Add(reserva1); reservas.Add(reserva2); reservas.Add(reserva3); logicaReservaMock.Setup(x => x.ObtenerTodos()).Returns(reservas); lista = generador.GenerarReporte(datos); condicionCantElem = (lista.Count == 2); condicionElemOrd = (lista.First().NombreHospedaje.Equals(hospedaje1.NombreHospedaje)); condicion = condicionCantElem && condicionElemOrd; Assert.IsTrue(condicion); }
public ActionResult DeleteConfirmed(int id) { //Hospedaje hospedaje = db.ServiciosTuristicos.Find(id); Hospedaje hospedaje = _UnityOfWork.Hospedajes.Get(id); //db.ServiciosTuristicos.Remove(hospedaje); _UnityOfWork.Hospedajes.Delete(hospedaje); //db.SaveChanges(); _UnityOfWork.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "ServicioTuristicoId,Fecha,Hora,Direccion,HospedajeId,Descripcion,TipoHospedajeId,CalificacionHospedajeId,CategoriaHospedajeId")] Hospedaje hospedaje) { if (ModelState.IsValid) { //db.Entry(hospedaje).State = EntityState.Modified; _UnityOfWork.StateModedified(hospedaje); //db.SaveChanges(); _UnityOfWork.SaveChanges(); return(RedirectToAction("Index")); } return(View(hospedaje)); }
public IActionResult Post(int id, [FromBody] HospedajeModel hospedajeModel) { try { Hospedaje hospedaje = hospedajeModel.ToEntity(); logic.AgregarHospedaje(hospedaje); return(Ok(hospedaje)); } catch (NombreNoValidoException) { return(BadRequest("Nombre de punto no valido")); } }
public ActionResult Create([Bind(Include = "ServicioTuristicoId,Fecha,Hora,Direccion,HospedajeId,Descripcion,TipoHospedajeId,CalificacionHospedajeId,CategoriaHospedajeId")] Hospedaje hospedaje) { if (ModelState.IsValid) { //db.ServiciosTuristicos.Add(hospedaje); _UnityOfWork.Hospedajes.Add(hospedaje); //db.SaveChanges(); _UnityOfWork.SaveChanges(); return(RedirectToAction("Index")); } return(View(hospedaje)); }
public void TestCambiarCapacidadMenorCero() { var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); Hospedaje hospedaje2 = new Hospedaje() { Id = 0, NombreHospedaje = "Test", Capacidad = 6 }; int nuevaCapacidad = -1; repoMock.Setup(x => x.Get(hospedaje2.Id)).Returns(hospedaje2); Assert.Throws <CapacidadNoValidaExcepcion>(() => logica.CambiarCapacidad(hospedaje2.Id, nuevaCapacidad)); }
public void CambiarCapacidad(int hospedajeId, int nuevaCapacidad) { Hospedaje hospedaje = this.ObtenerPorId(hospedajeId); if (nuevaCapacidad >= 0) { hospedaje.Capacidad = nuevaCapacidad; this.ActualizarHospedaje(hospedaje); } else { throw new CapacidadNoValidaExcepcion(); } }
public IActionResult Put(int id, [FromBody] HospedajeModel hospedajeModel) { try { Hospedaje hospedaje = hospedajeModel.ToEntity(); hospedaje.Id = id; logic.ActualizarHospedaje(hospedaje); return(Ok()); } catch (EntidadNoExisteExcepcion) { return(NotFound("No existe el hospedaje")); } }
public void ObtenerHospedajeIdNoExiste() { string nombre = "prueba"; var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); Hospedaje hospedaje = new Hospedaje() { Id = 0, NombreHospedaje = nombre, }; repoMock.Setup(x => x.Get(2)).Throws(new EntidadNoExisteExcepcion()); Assert.Throws <EntidadNoExisteExcepcion>(() => logica.ObtenerPorId(2)); }
public void AgregarReseniaAHospedajeQueNoExiste() { var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); Hospedaje hospedaje = new Hospedaje() { Id = 0 }; repoMock.Setup(x => x.GetAll()).Throws(new EntidadNoExisteExcepcion()); Assert.Throws <EntidadNoExisteExcepcion>(() => logica.AgregarResenia(hospedaje, It.IsAny <Resenia>())); }
// GET: Hospedajes/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } // Hospedaje hospedaje = db.ServicioTuristicoes.Find(id); Hospedaje hospedaje = _UnityOfWork.Hospedaje.Get(id); if (hospedaje == null) { return(HttpNotFound()); } return(View(hospedaje)); }
public void CalcularPromedioRedondeo() { var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); Resenia resenia1 = new Resenia() { Puntaje = 2 }; Resenia resenia2 = new Resenia() { Puntaje = 2 }; Resenia resenia3 = new Resenia() { Puntaje = 1 }; Hospedaje hospedaje = new Hospedaje() { Id = 0, Ocupado = false, PuntoTuristico = new PuntoTuristico(), NombreHospedaje = "Hotel X", Descripcion = "Test", Direccion = "Test", CantidadEstrellas = 2, Capacidad = 5, PrecioPorNoche = 140, PrecioTotalPeriodo = 200, Imagenes = new List <Imagen>() { new Imagen() { Id = 0, Ruta = "test.jpg", }, }, Resenias = new List <Resenia>() { resenia1, resenia2, resenia3 }, }; double esperado = 1.7; repoMock.Setup(x => x.Get(hospedaje.Id)).Returns(hospedaje); double resultado = logica.CalcularPromedio(hospedaje); Assert.AreEqual(esperado, resultado); }
public void AgregarHospedaje(Hospedaje hospedaje) { Hospedaje hospedajeABuscar = this.repository.GetAll().Where(x => x.Id == hospedaje.Id || x.NombreHospedaje.Equals(hospedaje.NombreHospedaje)).FirstOrDefault(); if (hospedajeABuscar != null) { throw new YaExisteLaEntidadExcepcion(); } hospedaje.NombreHospedaje = this.ValidaNombreHospedaje(hospedaje.NombreHospedaje); hospedaje.Ocupado = false; hospedaje.Puntaje = PUNTAJE_INICIAL; repository.Create(hospedaje); repository.Save(); }
public IActionResult GetPorId(int id) { try { Hospedaje hospedaje = logic.ObtenerPorId(id); return(Ok(hospedaje)); } catch (EntidadNoExisteExcepcion) { return(NotFound("No existe el hospedaje")); } catch (HospedajeOcupadoExcepcion) { return(BadRequest("Ese hospedaje esta ocupado")); } }
public void TestBorrarOk() { var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); Hospedaje hospedaje = new Hospedaje() { Id = 0, NombreHospedaje = "Test", }; repoMock.Setup(x => x.Delete(hospedaje)); repoMock.Setup(x => x.Save()); repoMock.Setup(x => x.Get(hospedaje.Id)).Returns(hospedaje); logica.BorrarHospedaje(hospedaje.Id); repoMock.VerifyAll(); }
public void ObtenerHospedajeIdValido() { string nombre = "prueba"; var repoMock = new Mock <IRepository <Hospedaje> >(MockBehavior.Strict); var logicaPuntoMock = new Mock <IPuntoTuristico>(MockBehavior.Strict); Hospedaje_Logic logica = new Hospedaje_Logic(repoMock.Object, logicaPuntoMock.Object); Hospedaje hospedaje = new Hospedaje() { Id = 0, NombreHospedaje = nombre, }; repoMock.Setup(x => x.Get(1)).Returns(hospedaje); Hospedaje resultado = logica.ObtenerPorId(1); Assert.AreEqual(nombre, resultado.NombreHospedaje); }