public void TestBorrarPregunta() { TestSetup testSetup = new TestSetup(); var mockDb = new Mock <DataIntegradorEntities>(); string codFormulario = "TESTPSU"; string codSeccion = "SECCPSU"; string codPregunta = "PREGSU"; // Se crea el formulario de prueba Formulario formulario = new Formulario() { Codigo = codFormulario, Nombre = "Formulario de prueba con preguntas de seleccion única" }; mockDb.Setup(m => m.Formulario.Find(codFormulario)).Returns(formulario); ObtenerSeccionesDeFormulario_Result seccion = new ObtenerSeccionesDeFormulario_Result { Codigo = codSeccion, Nombre = "Sección de prueba", Orden = 0 }; var mockedObtenerSecciones = testSetup.SetupMockProcedure <ObtenerSeccionesDeFormulario_Result> (new List <ObtenerSeccionesDeFormulario_Result> { seccion }); mockDb.Setup(x => x.ObtenerSeccionesDeFormulario(codFormulario)).Returns(mockedObtenerSecciones.Object); ObtenerPreguntasDeSeccion_Result pregunta = new ObtenerPreguntasDeSeccion_Result { Codigo = codPregunta, Enunciado = "¿Si no sé, es la _?", Tipo = "U", Orden = 0, }; FormulariosController controller = new FormulariosController(mockDb.Object); testSetup.SetupHttpContext(controller); var result = controller.BorrarPregunta(codSeccion, codPregunta); Assert.IsNotNull(result); }
public void TestLlenarFormulariosSinPreguntasDataMock() { TestSetup testSetup = new TestSetup(); var mockDb = new Mock <DataIntegradorEntities>(); string codFormulario = "CI0128G2"; string codSeccion = "12345678"; Formulario formulario = new Formulario() { Codigo = codFormulario, Nombre = "Formularios de prueba para CI0128" }; mockDb.Setup(m => m.Formulario.Find(codFormulario)).Returns(formulario); ObtenerSeccionesDeFormulario_Result seccion = new ObtenerSeccionesDeFormulario_Result { Codigo = codSeccion, Nombre = "Sección sobre algo", Orden = 0 }; var mockedObtenerSecciones = testSetup.SetupMockProcedure <ObtenerSeccionesDeFormulario_Result> (new List <ObtenerSeccionesDeFormulario_Result> { seccion }); mockDb.Setup(x => x.ObtenerSeccionesDeFormulario(codFormulario)).Returns(mockedObtenerSecciones.Object); LlenarFormularioController controller = new LlenarFormularioController(mockDb.Object); var result = controller.LlenarFormulario(codFormulario, null, 0, 0, 0); testSetup.SetupHttpContext(controller); Assert.IsNotNull(result); }
public void TestGuardarRespuestasAPreguntaLibre() { TestSetup testSetup = new TestSetup(); var mockDb = new Mock <DataIntegradorEntities>(); string codFormulario = "TESTPSU"; string codSeccion = "SECCPSU"; string codPregunta = "PREGSU"; // Se crea el formulario de prueba Formulario formulario = new Formulario() { Codigo = codFormulario, Nombre = "Formulario de prueba con preguntas de seleccion única" }; mockDb.Setup(m => m.Formulario.Find(codFormulario)).Returns(formulario); ObtenerSeccionesDeFormulario_Result seccion = new ObtenerSeccionesDeFormulario_Result { Codigo = codSeccion, Nombre = "Sección de prueba", Orden = 0 }; var mockedObtenerSecciones = testSetup.SetupMockProcedure <ObtenerSeccionesDeFormulario_Result> (new List <ObtenerSeccionesDeFormulario_Result> { seccion }); mockDb.Setup(x => x.ObtenerSeccionesDeFormulario(codFormulario)).Returns(mockedObtenerSecciones.Object); Pregunta pregunta = new Pregunta() { Codigo = codPregunta, Enunciado = "¿Qué piensa de Brexit?", Tipo = "L" }; Respuestas_a_formulario respuestas = new Respuestas_a_formulario() { FCodigo = codFormulario, Correo = "*****@*****.**", CSigla = "CI0128", GNumero = 2, GAnno = 2019, GSemestre = 2, Fecha = DateTime.Today, Finalizado = false }; PreguntaConNumeroSeccion preguntaConSeccion = new PreguntaConNumeroSeccion() { OrdenSeccion = 0, OrdenPregunta = 0, Pregunta = pregunta, RespuestaLibreOJustificacion = "Para que cubra más del coverage" }; LlenarFormularioController controller = new LlenarFormularioController(mockDb.Object); testSetup.SetupHttpContext(controller); // Si no se cae en esta linea, significa que el guardar funciona correctamente controller.GuardarRespuestaAPregunta(preguntaConSeccion, codSeccion, respuestas); }
public void TestLlenarFormulariosConPreguntaRespuestaLibre() { TestSetup testSetup = new TestSetup(); var mockDb = new Mock <DataIntegradorEntities>(); string codFormulario = "TESTPRL"; string codSeccion = "SECCPRL"; string codPregunta = "PREGRL"; // Se crea el formulario de prueba Formulario formulario = new Formulario() { Codigo = codFormulario, Nombre = "Formulario de prueba con preguntas de respuesta libre" }; mockDb.Setup(m => m.Formulario.Find(codFormulario)).Returns(formulario); ObtenerSeccionesDeFormulario_Result seccion = new ObtenerSeccionesDeFormulario_Result { Codigo = codSeccion, Nombre = "Sección de prueba", Orden = 0 }; var mockedObtenerSecciones = testSetup.SetupMockProcedure <ObtenerSeccionesDeFormulario_Result> (new List <ObtenerSeccionesDeFormulario_Result> { seccion }); mockDb.Setup(x => x.ObtenerSeccionesDeFormulario(codFormulario)).Returns(mockedObtenerSecciones.Object); ObtenerPreguntasDeSeccion_Result pregunta = new ObtenerPreguntasDeSeccion_Result { Codigo = codPregunta, Enunciado = "Explique qué es la ingeniería de los requerimientos.", Tipo = "L", Orden = 0, }; var mockedObtenerPreguntas = testSetup.SetupMockProcedure <ObtenerPreguntasDeSeccion_Result> (new List <ObtenerPreguntasDeSeccion_Result> { pregunta }); mockDb.Setup(x => x.ObtenerPreguntasDeSeccion(codSeccion)).Returns(mockedObtenerPreguntas.Object); ObtenerRespuestasAFormulario_Result respuestas = new ObtenerRespuestasAFormulario_Result { Correo = "*****@*****.**", CSigla = "CI0128", GNumero = 1, GAnno = 2019, GSemestre = 2, FCodigo = codFormulario, }; // Se prepara el retorno del procedimiento almacenado en el mock var mockedObtenerRespuestas = testSetup.SetupMockProcedure <ObtenerRespuestasAFormulario_Result> (new List <ObtenerRespuestasAFormulario_Result> { respuestas }); mockDb.Setup(x => x.ObtenerRespuestasAFormulario(respuestas.FCodigo, respuestas.Correo, respuestas.CSigla, respuestas.GNumero, respuestas.GAnno, respuestas.GSemestre)).Returns(mockedObtenerRespuestas.Object); var respuestaLibreList = new List <ObtenerRespuestaLibreGuardada_Result> { new ObtenerRespuestaLibreGuardada_Result { FCodigo = respuestas.FCodigo, Correo = respuestas.Correo, CSigla = respuestas.CSigla, GNumero = respuestas.GNumero, GAnno = respuestas.GAnno, GSemestre = respuestas.GSemestre, SCodigo = codSeccion, PCodigo = codPregunta } }; mockDb.Setup(x => x.ObtenerRespuestaLibreGuardada(respuestas.FCodigo, respuestas.Correo, respuestas.CSigla, respuestas.GNumero, respuestas.GAnno, respuestas.GSemestre, codPregunta, codSeccion)).Returns(respuestaLibreList.AsQueryable()); LlenarFormularioController controller = new LlenarFormularioController(mockDb.Object); testSetup.SetupHttpContext(controller); var result = controller.LlenarFormulario(codFormulario, respuestas.CSigla, respuestas.GNumero, respuestas.GAnno, respuestas.GSemestre); Assert.IsNotNull(result); }
public void TestLlenarFormulariosConPreguntasDeOpcionUnica() { TestSetup testSetup = new TestSetup(); var mockDb = new Mock <DataIntegradorEntities>(); string codFormulario = "TESTPSU"; string codSeccion = "SECCPSU"; string codPregunta = "PREGSU"; // Se crea el formulario de prueba Formulario formulario = new Formulario() { Codigo = codFormulario, Nombre = "Formulario de prueba con preguntas de seleccion única" }; mockDb.Setup(m => m.Formulario.Find(codFormulario)).Returns(formulario); ObtenerSeccionesDeFormulario_Result seccion = new ObtenerSeccionesDeFormulario_Result { Codigo = codSeccion, Nombre = "Sección de prueba", Orden = 0 }; var mockedObtenerSecciones = testSetup.SetupMockProcedure <ObtenerSeccionesDeFormulario_Result> (new List <ObtenerSeccionesDeFormulario_Result> { seccion }); mockDb.Setup(x => x.ObtenerSeccionesDeFormulario(codFormulario)).Returns(mockedObtenerSecciones.Object); ObtenerPreguntasDeSeccion_Result pregunta = new ObtenerPreguntasDeSeccion_Result { Codigo = codPregunta, Enunciado = "¿Si no sé, es la _?", Tipo = "U", Orden = 0, }; var mockedObtenerPreguntas = testSetup.SetupMockProcedure <ObtenerPreguntasDeSeccion_Result> (new List <ObtenerPreguntasDeSeccion_Result> { pregunta }); mockDb.Setup(x => x.ObtenerPreguntasDeSeccion(codSeccion)).Returns(mockedObtenerPreguntas.Object); Pregunta_con_opciones pregunta_Con_Opciones = new Pregunta_con_opciones { Codigo = codPregunta, Pregunta_con_opciones_de_seleccion = new Pregunta_con_opciones_de_seleccion() }; mockDb.Setup(x => x.Pregunta_con_opciones.Find(codPregunta)).Returns(pregunta_Con_Opciones); var mockedOpciones = testSetup.SetupMockProcedure <ObtenerOpcionesDePregunta_Result>(new List <ObtenerOpcionesDePregunta_Result> { new ObtenerOpcionesDePregunta_Result { Orden = 0, Texto = "A" }, new ObtenerOpcionesDePregunta_Result { Orden = 1, Texto = "B" }, new ObtenerOpcionesDePregunta_Result { Orden = 2, Texto = "C" }, new ObtenerOpcionesDePregunta_Result { Orden = 3, Texto = "D" } }); mockDb.Setup(x => x.ObtenerOpcionesDePregunta(codPregunta)).Returns(mockedOpciones.Object); LlenarFormularioController controller = new LlenarFormularioController(mockDb.Object); testSetup.SetupHttpContext(controller); var result = controller.LlenarFormulario(codFormulario, null, 0, 0, 0); Assert.IsNotNull(result); }
public void TestLlenarFormulariosConPreguntasEscalarConRespuestaGuardadaDataMock() { TestSetup testSetup = new TestSetup(); var mockDb = new Mock <DataIntegradorEntities>(); string codFormulario = "CI0128G2"; string codSeccion = "12345678"; string codPregunta = "escalar"; Formulario formulario = new Formulario() { Codigo = codFormulario, Nombre = "Formularios de prueba para CI0128" }; mockDb.Setup(m => m.Formulario.Find(codFormulario)).Returns(formulario); ObtenerSeccionesDeFormulario_Result seccion = new ObtenerSeccionesDeFormulario_Result { Codigo = codSeccion, Nombre = "Sección sobre algo", Orden = 0 }; var mockedObtenerSecciones = testSetup.SetupMockProcedure <ObtenerSeccionesDeFormulario_Result> (new List <ObtenerSeccionesDeFormulario_Result> { seccion }); mockDb.Setup(x => x.ObtenerSeccionesDeFormulario(codFormulario)).Returns(mockedObtenerSecciones.Object); ObtenerRespuestasAFormulario_Result respuestas = new ObtenerRespuestasAFormulario_Result { Correo = "*****@*****.**", CSigla = "CI0128", GNumero = 1, GAnno = 2019, GSemestre = 2, FCodigo = codFormulario, }; // Se prepara el retorno del procedimiento almacenado en el mock var mockedObtenerRespuestas = testSetup.SetupMockProcedure <ObtenerRespuestasAFormulario_Result> (new List <ObtenerRespuestasAFormulario_Result> { respuestas }); mockDb.Setup(x => x.ObtenerRespuestasAFormulario(respuestas.FCodigo, respuestas.Correo, respuestas.CSigla, respuestas.GNumero, respuestas.GAnno, respuestas.GSemestre)).Returns(mockedObtenerRespuestas.Object); ObtenerPreguntasDeSeccion_Result pregunta = new ObtenerPreguntasDeSeccion_Result { Codigo = codPregunta, Enunciado = "¿Cómo calificaría este curso?", Tipo = "E", Orden = 0 }; var mockedObtenerPreguntas = testSetup.SetupMockProcedure <ObtenerPreguntasDeSeccion_Result> (new List <ObtenerPreguntasDeSeccion_Result> { pregunta }); mockDb.Setup(x => x.ObtenerPreguntasDeSeccion(codSeccion)).Returns(mockedObtenerPreguntas.Object); Pregunta_con_opciones pregunta_Con_Opciones = new Pregunta_con_opciones { Codigo = codPregunta, TituloCampoObservacion = "¿Por qué?" }; mockDb.Setup(x => x.Pregunta_con_opciones.Find(codPregunta)).Returns(pregunta_Con_Opciones); Escalar escalar = new Escalar { Codigo = codPregunta, Incremento = 1, Minimo = 1, Maximo = 10 }; mockDb.Setup(x => x.Escalar.Find(codPregunta)).Returns(escalar); ObtenerRespuestasAPreguntaConOpciones_Result obtenerRespuestasAPreguntaConOpciones = new ObtenerRespuestasAPreguntaConOpciones_Result { Correo = respuestas.Correo, FCodigo = respuestas.FCodigo, CSigla = respuestas.CSigla, GNumero = respuestas.GNumero, GAnno = respuestas.GAnno, GSemestre = respuestas.GSemestre, SCodigo = codSeccion, PCodigo = codPregunta, Justificacion = "Porque sí." }; var mockedRespuestaPreguntaConOpciones = testSetup.SetupMockProcedure <ObtenerRespuestasAPreguntaConOpciones_Result>(new List <ObtenerRespuestasAPreguntaConOpciones_Result> { obtenerRespuestasAPreguntaConOpciones }); mockDb.Setup(x => x.ObtenerRespuestasAPreguntaConOpciones(obtenerRespuestasAPreguntaConOpciones.FCodigo, obtenerRespuestasAPreguntaConOpciones.Correo, obtenerRespuestasAPreguntaConOpciones.CSigla, obtenerRespuestasAPreguntaConOpciones.GNumero, obtenerRespuestasAPreguntaConOpciones.GSemestre, obtenerRespuestasAPreguntaConOpciones.GAnno, obtenerRespuestasAPreguntaConOpciones.SCodigo, obtenerRespuestasAPreguntaConOpciones.PCodigo)).Returns(mockedRespuestaPreguntaConOpciones.Object); ObtenerOpcionesSeleccionadas_Result obtenerOpciones = new ObtenerOpcionesSeleccionadas_Result { Correo = respuestas.Correo, FCodigo = respuestas.FCodigo, CSigla = respuestas.CSigla, GNumero = respuestas.GNumero, GAnno = respuestas.GAnno, GSemestre = respuestas.GSemestre, SCodigo = codSeccion, PCodigo = codPregunta, OpcionSeleccionada = 0 }; var mockedObtenerOpciones = testSetup.SetupMockProcedure <ObtenerOpcionesSeleccionadas_Result>(new List <ObtenerOpcionesSeleccionadas_Result> { obtenerOpciones }); mockDb.Setup(x => x.ObtenerOpcionesSeleccionadas(obtenerOpciones.FCodigo, obtenerOpciones.Correo, obtenerOpciones.CSigla, obtenerOpciones.GNumero, obtenerOpciones.GSemestre, obtenerOpciones.GAnno, obtenerOpciones.SCodigo, obtenerOpciones.PCodigo)).Returns(mockedObtenerOpciones.Object); LlenarFormularioController controller = new LlenarFormularioController(mockDb.Object); testSetup.SetupHttpContext(controller); var result = controller.LlenarFormulario(codFormulario, respuestas.CSigla, respuestas.GNumero, respuestas.GAnno, respuestas.GSemestre); Assert.IsNotNull(result); }
public void TestLlenarFormulariosConPreguntasEscalarSinRespuestaGuardadaDataMock() { TestSetup testSetup = new TestSetup(); var mockDb = new Mock <DataIntegradorEntities>(); string codFormulario = "CI0128G2"; string codSeccion = "12345678"; string codPregunta = "escalar"; Formulario formulario = new Formulario() { Codigo = codFormulario, Nombre = "Formularios de prueba para CI0128" }; mockDb.Setup(m => m.Formulario.Find(codFormulario)).Returns(formulario); ObtenerSeccionesDeFormulario_Result seccion = new ObtenerSeccionesDeFormulario_Result { Codigo = codSeccion, Nombre = "Sección sobre algo", Orden = 0 }; var mockedObtenerSecciones = testSetup.SetupMockProcedure <ObtenerSeccionesDeFormulario_Result> (new List <ObtenerSeccionesDeFormulario_Result> { seccion }); mockDb.Setup(x => x.ObtenerSeccionesDeFormulario(codFormulario)).Returns(mockedObtenerSecciones.Object); ObtenerPreguntasDeSeccion_Result pregunta = new ObtenerPreguntasDeSeccion_Result { Codigo = codPregunta, Enunciado = "¿Cómo calificaría este curso?", Tipo = "E", Orden = 0 }; var mockedObtenerPreguntas = testSetup.SetupMockProcedure <ObtenerPreguntasDeSeccion_Result> (new List <ObtenerPreguntasDeSeccion_Result> { pregunta }); mockDb.Setup(x => x.ObtenerPreguntasDeSeccion(codSeccion)).Returns(mockedObtenerPreguntas.Object); Pregunta_con_opciones pregunta_Con_Opciones = new Pregunta_con_opciones { Codigo = codPregunta, TituloCampoObservacion = "¿Por qué?" }; mockDb.Setup(x => x.Pregunta_con_opciones.Find(codPregunta)).Returns(pregunta_Con_Opciones); Escalar escalar = new Escalar { Codigo = codPregunta, Incremento = 1, Minimo = 1, Maximo = 10 }; mockDb.Setup(x => x.Escalar.Find(codPregunta)).Returns(escalar); LlenarFormularioController controller = new LlenarFormularioController(mockDb.Object); testSetup.SetupHttpContext(controller); var result = controller.LlenarFormulario(codFormulario, null, 0, 0, 0); Assert.IsNotNull(result); }