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)); } }
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); } }