예제 #1
0
        public void UpdateWorkerReturnsIsValidForValidRequest()
        {
            var request   = TestHelpers.CreateUpdateFormSubmissionAnswersRequest();
            var validator = new UpdateFormSubmissionAnswersValidator();

            var validationResponse = validator.Validate(request);

            validationResponse.IsValid.Should().Be(true);
        }
        public IActionResult EditSubmissionAnswers(string submissionId, string stepId, [FromBody] UpdateFormSubmissionAnswersRequest request)
        {
            var validator         = new UpdateFormSubmissionAnswersValidator();
            var validationResults = validator.Validate(request);

            if (!validationResults.IsValid)
            {
                return(BadRequest(validationResults.ToString()));
            }

            try
            {
                return(Ok(_formSubmissionsUseCase.UpdateAnswers(submissionId, stepId, request)));
            }
            catch (GetSubmissionException e)
            {
                return(UnprocessableEntity(e.Message));
            }
            catch (WorkerNotFoundException e)
            {
                return(UnprocessableEntity(e.Message));
            }
        }
예제 #3
0
        public void UpdateFormSubmissionAnswersRequestReturnsIsNotValidForInvalidRequest()
        {
            var badRequests = new List <(UpdateFormSubmissionAnswersRequest, string)>
            {
                (TestHelpers.CreateUpdateFormSubmissionAnswersRequest(editedBy: "invalid_email"), "Provide a valid email address for who edited the submission"),
                (TestHelpers.CreateUpdateFormSubmissionAnswersRequest(title: ""), "Title must have a length of at least 1")
            };

            var validator = new UpdateFormSubmissionAnswersValidator();

            foreach (var(request, errorMessage) in badRequests)
            {
                var validationResponse = validator.Validate(request);

                if (validationResponse == null)
                {
                    throw new NullReferenceException();
                }

                validationResponse.IsValid.Should().Be(false);
                validationResponse.ToString().Should().Be(errorMessage);
            }
        }