public void TestAplicarFiltros() { var mockDb = new Mock <DataIntegradorEntities>(); FormulariosController controller = new FormulariosController(mockDb.Object); Seccion seccion = new Seccion() { Codigo = "CI0128IE", Nombre = "Sección de prueba" }; Seccion seccion2 = new Seccion() { Codigo = "CI0122IE", Nombre = "Sección de p3ueba" }; IQueryable <Seccion> secciones = new List <Seccion> { seccion, seccion2 }.AsQueryable(); var mock = new Mock <DbSet <Seccion> >(); mock.As <IQueryable <Seccion> >().Setup(m => m.Provider).Returns(secciones.Provider); mock.As <IQueryable <Seccion> >().Setup(m => m.Expression).Returns(secciones.Expression); mock.As <IQueryable <Seccion> >().Setup(m => m.ElementType).Returns(secciones.ElementType); mock.As <IQueryable <Seccion> >().Setup(m => m.GetEnumerator()).Returns(secciones.GetEnumerator()); mockDb.Setup(x => x.Seccion).Returns(mock.Object); // Se prueba que el método no se caiga con parámetros nulos var result = controller.AplicarFiltro(null, null, null); Assert.IsNotNull(result); // Se prueba que el método no se caiga con un paramétro de código formulario real var result1 = controller.AplicarFiltro("CI0128", "", ""); Assert.IsNotNull(result); // Se prueba que el método no se caiga con un parámetro de nombre real var result2 = controller.AplicarFiltro("", "Prueba", ""); Assert.IsNotNull(result); // Se prueba que el método no se caiga con un parámetro de tipo de pregunta real var result3 = controller.AplicarFiltro("", "", "libre"); Assert.IsNotNull(result); }