public IActionResult UpdateCaseStatus([FromBody] UpdateCaseStatusRequest request) { var validator = new UpdateCaseStatusValidator(); var validationResults = validator.Validate(request); if (!validationResults.IsValid) { return(BadRequest(validationResults.ToString())); } try { var caseStatus = _caseStatusesUseCase.ExecuteUpdate(request); return(Ok(caseStatus)); } catch (Exception e) when( e is PersonNotFoundException || e is WorkerNotFoundException || e is CaseStatusDoesNotMatchPersonException || e is InvalidCaseStatusUpdateRequestException ) { return(BadRequest(e.Message)); } catch (CaseStatusDoesNotExistException e) { return(NotFound(e.Message)); } }
public void UpdateCaseStatusRequestValidation(UpdateCaseStatusRequest request, bool validRequest, string?errorMessage) { var validator = new UpdateCaseStatusValidator(); var validationResponse = validator.Validate(request); if (validRequest) { validationResponse.IsValid.Should().BeTrue(); } else { validationResponse.IsValid.Should().BeFalse(); validationResponse.ToString().Should().Be(errorMessage); } }