public void Validator_fails_when_invalid_details_added(int?day, int?month, int?year, int numberOfErrors, string errorMessageType) { var errorMessage = string.Empty; switch (errorMessageType) { case "noDetails": errorMessage = RoatpOrganisationValidation.ApplicationDeterminedDateNoFieldsEntered; break; case "partialDetails": errorMessage = RoatpOrganisationValidation.ApplicationDeterminedDateFieldsNotEntered; break; case "invalidDateDetails": errorMessage = RoatpOrganisationValidation.ApplicationDeterminedDateInvalidDates; break; case "futureDateDetails": errorMessage = RoatpOrganisationValidation.ApplicationDeterminedDateFutureDate; year = DateTime.Today.Year + 1; break; } _viewModel = new AddApplicationDeterminedDateViewModel { Day = day, Month = month, Year = year }; var validator = new AddApplicationDeterminedDateViewModelValidator(new ApplicationDeterminedDateValidationService()); var validationResult = validator.Validate(_viewModel); Assert.AreEqual(numberOfErrors, validationResult.Errors.Count); Assert.IsTrue(validationResult.Errors.Any(x => x.ErrorMessage == errorMessage)); }
public void Validator_passes_valid_date(int year) { _viewModel = new AddApplicationDeterminedDateViewModel { Day = 10, Month = 4, Year = year }; var validator = new AddApplicationDeterminedDateViewModelValidator(new ApplicationDeterminedDateValidationService()); var validationResult = validator.Validate(_viewModel); Assert.AreEqual(0, validationResult.Errors.Count); }
private async Task <AddApplicationDeterminedDateViewModel> SetUpConfirmationModel(AddApplicationDeterminedDateViewModel vm) { var model = new AddApplicationDeterminedDateViewModel { OrganisationTypeId = vm.OrganisationTypeId, OrganisationTypes = await _apiClient.GetOrganisationTypes(vm.ProviderTypeId), ProviderTypes = await _apiClient.GetProviderTypes(), ProviderTypeId = vm.ProviderTypeId, LegalName = TextSanitiser.SanitiseText(vm.LegalName.ToUpper()), TradingName = TextSanitiser.SanitiseText(vm.TradingName), UKPRN = vm.UKPRN, CompanyNumber = vm.CompanyNumber, CharityNumber = vm.CharityNumber, Day = vm.Day, Month = vm.Month, Year = vm.Year }; return(model); }
public async Task <IActionResult> ConfirmOrganisationDetails(AddApplicationDeterminedDateViewModel model) { var organisationVm = _sessionService.GetAddOrganisationDetails(); organisationVm.ApplicationDeterminedDate = model.ApplicationDeterminedDate; var vm = MapOrganisationVmToApplicationDeterminedDateVm(organisationVm); vm.Day = model.Day; vm.Month = model.Month; vm.Year = model.Year; if (!IsRedirectFromConfirmationPage() && !ModelState.IsValid) { var errorMessages = GatherErrorMessagesFromModelState(); vm.ErrorMessages = errorMessages; return(View("~/Views/Roatp/AddApplicationDeterminedDate.cshtml", vm)); } vm.LegalName = vm.LegalName.ToUpper(); _sessionService.SetAddOrganisationDetails(vm); model = await SetUpConfirmationModel(vm); return(View("~/Views/Roatp/AddOrganisationPreview.cshtml", model)); }