public async Task FiltrarPorTitulo() { var nombreBD = CrearDataPrueba(); var mapper = ConfigurarAutoMapper(); var contexto = ConstruirContext(nombreBD); var controller = new PeliculasController(contexto, mapper, null, null); controller.ControllerContext.HttpContext = new DefaultHttpContext(); var tituloPelicula = "Película 1"; var filtroDTO = new FiltroPeliculasDTO() { Titulo = tituloPelicula, CantidadRegistrosPorPagina = 10 }; var respuesta = await controller.Filtrar(filtroDTO); var peliculas = respuesta.Value; Assert.AreEqual(1, peliculas.Count); Assert.AreEqual(tituloPelicula, peliculas[0].Titulo); }
public async Task FiltrarTituloDescendente() { var nombreBD = CrearDataPrueba(); var mapper = ConfigurarAutoMapper(); var contexto = ConstruirContext(nombreBD); var controller = new PeliculasController(contexto, mapper, null, null); controller.ControllerContext.HttpContext = new DefaultHttpContext(); var filtroDTO = new FiltroPeliculasDTO() { CampoOrdenar = "titulo", OrdenAscendente = false }; var respuesta = await controller.Filtrar(filtroDTO); var peliculas = respuesta.Value; var contexto2 = ConstruirContext(nombreBD); var peliculasDB = contexto2.Peliculas.OrderByDescending(x => x.Titulo).ToList(); Assert.AreEqual(peliculasDB.Count, peliculas.Count); for (int i = 0; i < peliculasDB.Count; i++) { var peliculaDelControlador = peliculas[i]; var peliculaDB = peliculasDB[i]; Assert.AreEqual(peliculaDB.Id, peliculaDelControlador.Id); } }
public async Task FiltrarPorCampoIncorrectoDevuelvePeliculas() { var nombreBD = CrearDataPrueba(); var mapper = ConfigurarAutoMapper(); var contexto = ConstruirContext(nombreBD); var mock = new Mock <ILogger <PeliculasController> >(); var controller = new PeliculasController(contexto, mapper, null, mock.Object); controller.ControllerContext.HttpContext = new DefaultHttpContext(); var filtroDTO = new FiltroPeliculasDTO() { CampoOrdenar = "abc", OrdenAscendente = true }; var respuesta = await controller.Filtrar(filtroDTO); var peliculas = respuesta.Value; var contexto2 = ConstruirContext(nombreBD); var peliculasDB = contexto2.Peliculas.ToList(); Assert.AreEqual(peliculasDB.Count, peliculas.Count); Assert.AreEqual(1, mock.Invocations.Count); }
public async Task FiltrarEnCines() { var nombreBD = CrearDataPrueba(); var mapper = ConfigurarAutoMapper(); var contexto = ConstruirContext(nombreBD); var controller = new PeliculasController(contexto, mapper, null, null); controller.ControllerContext.HttpContext = new DefaultHttpContext(); var filtroDTO = new FiltroPeliculasDTO() { EnCines = true }; var respuesta = await controller.Filtrar(filtroDTO); var peliculas = respuesta.Value; Assert.AreEqual(1, peliculas.Count); Assert.AreEqual("Película en Cines", peliculas[0].Titulo); }
public async Task FiltrarPorGenero() { var nombreBD = CrearDataPrueba(); var mapper = ConfigurarAutoMapper(); var contexto = ConstruirContext(nombreBD); var controller = new PeliculasController(contexto, mapper, null, null); controller.ControllerContext.HttpContext = new DefaultHttpContext(); var generoId = contexto.Generos.Select(x => x.Id).First(); var filtroDTO = new FiltroPeliculasDTO() { GeneroId = generoId }; var respuesta = await controller.Filtrar(filtroDTO); var peliculas = respuesta.Value; Assert.AreEqual(1, peliculas.Count); Assert.AreEqual("Película con Género", peliculas[0].Titulo); }