public void AlterRespuestas_WhenThrowException_ReturnStatusCode()
        {
            //Arrange
            _controller = new RespuestaController(_logger, _respuestasInfoRepository);

            var respuestasEntity = new everisapi.API.Models.RespuestaConUserDto {
                Id           = 1,
                PreguntaId   = 1,
                Estado       = 1,
                EvaluacionId = 1,
                UserName     = "******"
            };

            mockRepository.Setup(r => r.ExiteRespuesta(1)).Throws(new Exception());

            //Act
            var okResult = _controller.AlterRespuesta(RespuestaUpdate: respuestasEntity);

            //Assert
            Assert.IsType <ObjectResult>(okResult);
        }
        public void AlterRespuestas_WhenNotExitRespuesta_ReturnNotFound()
        {
            //Arrange
            _controller = new RespuestaController(_logger, _respuestasInfoRepository);

            var respuestasEntity = new everisapi.API.Models.RespuestaConUserDto {
                Id           = 1,
                PreguntaId   = 1,
                Estado       = 1,
                EvaluacionId = 1,
                UserName     = "******"
            };

            mockRepository.Setup(r => r.ExiteRespuesta(1)).Returns(false);

            //Act
            var okResult = _controller.AlterRespuesta(RespuestaUpdate: respuestasEntity);

            //Assert
            Assert.IsType <NotFoundResult>(okResult);
        }
        public void AlterRespuesta_WhenCalled_ReturnOkResult()
        {
            //Arrange
            _controller = new RespuestaController(_logger, _respuestasInfoRepository);

            var respuestasEntity = new everisapi.API.Models.RespuestaConUserDto {
                Id           = 1,
                PreguntaId   = 1,
                Estado       = 1,
                EvaluacionId = 1,
                UserName     = "******"
            };

            mockRepository.Setup(r => r.ExiteRespuesta(1)).Returns(true);
            mockRepository.Setup(r => r.UpdateRespuesta(respuestasEntity)).Returns(true);
            mockRepository.Setup(r => r.SaveChanges()).Returns(true);

            //Act
            var okResult = _controller.AlterRespuesta(RespuestaUpdate: respuestasEntity);

            //Assert
            Assert.IsType <OkObjectResult>(okResult);
        }
        public void AlterRespuestas_GivenInvalidModel_ReturnsBadRequest()
        {
            //Arrange
            _controller = new RespuestaController(_logger, _respuestasInfoRepository);

            _controller.ModelState.AddModelError("error", "some error");

            var respuestasEntity = new everisapi.API.Models.RespuestaConUserDto {
                Id           = 1,
                PreguntaId   = 1,
                Estado       = 1,
                EvaluacionId = 1,
                UserName     = "******"
            };

            //Act
            mockRepository.Setup(r => r.ExiteRespuesta(1)).Returns(true);
            mockRepository.Setup(r => r.UpdateRespuesta(respuestasEntity)).Returns(true);

            var okResult = _controller.AlterRespuesta(RespuestaUpdate: respuestasEntity);

            //Assert
            Assert.IsType <BadRequestObjectResult>(okResult);
        }