public void Setup() { _registerRepository = new Mock <IRegisterRepository>(); _cleanserService = new Mock <ISpecialCharacterCleanserService>(); _validator = new Mock <IEpaOrganisationValidator>(); _logger = new Mock <ILogger <UpdateEpaOrganisationStandardHandler> >(); _organisationId = "EPA999"; _requestNoIssuesId = 1; _requestNoIssues = BuildRequest(_organisationId, 123321, new List <int> { 1 }); _expectedOrganisationStandardNoIssues = BuildOrganisationStandard(_requestNoIssues, _requestNoIssuesId); _registerRepository.Setup(r => r.UpdateEpaOrganisationStandard(It.IsAny <EpaOrganisationStandard>(), new List <int> { 1 })) .Returns(Task.FromResult(_expectedOrganisationStandardNoIssues.Id.ToString())); _validator.Setup(v => v.ValidatorUpdateEpaOrganisationStandardRequest(_requestNoIssues)).Returns(new ValidationResponse()); _cleanserService.Setup(c => c.CleanseStringForSpecialCharacters(It.IsAny <string>())) .Returns((string s) => s); _updateEpaOrganisationStandardHandler = new UpdateEpaOrganisationStandardHandler(_registerRepository.Object, _validator.Object, _logger.Object, _cleanserService.Object); }
public async Task <IActionResult> EditOrganisationStandard(RegisterViewAndEditOrganisationStandardViewModel viewModel) { if (!ModelState.IsValid) { var viewModelInvalid = await AddContactsAndDeliveryAreasAndDateDetails(viewModel); return(View(viewModelInvalid)); } var updateOrganisationStandardRequest = new UpdateEpaOrganisationStandardRequest { OrganisationId = viewModel.OrganisationId, StandardCode = viewModel.StandardId, EffectiveFrom = viewModel.EffectiveFrom, EffectiveTo = viewModel.EffectiveTo, ContactId = viewModel.ContactId.ToString(), DeliveryAreas = viewModel.DeliveryAreas, Comments = viewModel.Comments, DeliveryAreasComments = viewModel.DeliveryAreasComments }; var organisationStandardId = await _apiClient.UpdateEpaOrganisationStandard(updateOrganisationStandardRequest); return(Redirect($"/register/view-standard/{organisationStandardId}")); }
public async Task <string> UpdateEpaOrganisationStandard(UpdateEpaOrganisationStandardRequest request) { var result = await Put <UpdateEpaOrganisationStandardRequest, EpaoStandardResponse>("api/ao/assessment-organisations/standards", request); return(result.Details); }
private EpaOrganisationStandard BuildOrganisationStandard(UpdateEpaOrganisationStandardRequest request, int id) { return(new EpaOrganisationStandard { Id = id, OrganisationId = request.OrganisationId, StandardCode = request.StandardCode, EffectiveFrom = request.EffectiveFrom, EffectiveTo = request.EffectiveTo, Comments = request.Comments, Status = "New" }); }
public async Task <IActionResult> UpdateOrganisationStandard([FromBody] UpdateEpaOrganisationStandardRequest request) { try { _logger.LogInformation($@"Updating Organisation Standard [{request.OrganisationId}, {request.StandardCode}]"); var result = await _mediator.Send(request); return(Ok(new EpaoStandardResponse(result))); } catch (Exception ex) { _logger.LogError($@"Bad request, Message: [{ex.Message}]"); return(BadRequest(new EpaoStandardResponse(ex.Message))); } }
public void Arrange() { _mediator = new Mock <IMediator>(); _logger = new Mock <ILogger <RegisterController> >(); _standardCode = 3; _orgId = "EPA999"; _request = new UpdateEpaOrganisationStandardRequest { OrganisationId = _orgId, StandardCode = _standardCode, EffectiveFrom = DateTime.Now, Comments = "this is a comment", EffectiveTo = null }; _mediator.Setup(m => m.Send(_request, new CancellationToken())).Throws <Exception>(); _controller = new RegisterController(_mediator.Object, _logger.Object); _result = _controller.UpdateOrganisationStandard(_request).Result; }
public ValidationResponse ValidatorUpdateEpaOrganisationStandardRequest(UpdateEpaOrganisationStandardRequest request) { var validationResult = new ValidationResponse(); var standard = GetStandard(request.StandardCode).Result; if (standard is null) { var standardErrorMessage = FormatErrorMessage(EpaOrganisationValidatorMessageName.StandardNotFound); RunValidationCheckAndAppendAnyError("StandardCode", standardErrorMessage, validationResult, ValidationStatusCode.NotFound); return(validationResult); } RunValidationCheckAndAppendAnyError("OrganisationId", CheckIfOrganisationStandardDoesNotExist(request.OrganisationId, request.StandardCode), validationResult, ValidationStatusCode.BadRequest); RunValidationCheckAndAppendAnyError("ContactId", CheckIfContactIdIsValid(request.ContactId, request.OrganisationId), validationResult, ValidationStatusCode.BadRequest); RunValidationCheckAndAppendAnyError("DeliveryAreas", CheckIfDeliveryAreasAreValid(request.DeliveryAreas), validationResult, ValidationStatusCode.BadRequest); RunValidationCheckAndAppendAnyError("EffectiveFrom", CheckOrganisationStandardFromDateIsWithinStandardDateRanges(request.EffectiveFrom, standard.StandardData.EffectiveFrom, standard.StandardData.EffectiveTo, standard.StandardData.LastDateForNewStarts), validationResult, ValidationStatusCode.BadRequest); RunValidationCheckAndAppendAnyError("EffectiveFrom", CheckEffectiveFromIsOnOrBeforeEffectiveTo(request.EffectiveFrom, request.EffectiveTo), validationResult, ValidationStatusCode.BadRequest); RunValidationCheckAndAppendAnyError("EffectiveTo", CheckOrganisationStandardToDateIsWithinStandardDateRanges(request.EffectiveTo, standard.StandardData.EffectiveFrom, standard.StandardData.EffectiveTo), validationResult, ValidationStatusCode.BadRequest); RunValidationCheckAndAppendAnyError("EffectiveFrom", CheckOrganisationStandardEffectiveFromIsEntered(request.EffectiveFrom), validationResult, ValidationStatusCode.BadRequest); return(validationResult); }