public IActionResult LearnerInformation(LearnerInformationViewModel model) { var data = TempData.Peek <DelegateRegistrationByCentreData>() !; var centreId = data.Centre !.Value; promptsService.ValidateCentreRegistrationPrompts( centreId, model.Answer1, model.Answer2, model.Answer3, model.Answer4, model.Answer5, model.Answer6, ModelState ); ProfessionalRegistrationNumberHelper.ValidateProfessionalRegistrationNumber( ModelState, model.HasProfessionalRegistrationNumber, model.ProfessionalRegistrationNumber ); if (!ModelState.IsValid) { PopulateLearnerInformationExtraFields(model, data); return(View(model)); } data.SetLearnerInformation(model); TempData.Set(data); return(RedirectToAction("WelcomeEmail")); }
public void GetHasProfessionalRegistrationNumberForView_returns_true_when_has_been_prompted_and_has_prn() { // When var result = ProfessionalRegistrationNumberHelper.GetHasProfessionalRegistrationNumberForView(true, "prn-12"); // Then result.Should().BeTrue(); }
public void GetHasProfessionalRegistrationNumberForView_returns_false_when_has_been_prompted_and_no_prn() { // When var result = ProfessionalRegistrationNumberHelper.GetHasProfessionalRegistrationNumberForView(true, null); // Then result.Should().BeFalse(); }
public void GetHasProfessionalRegistrationNumberForView_returns_null_when_has_not_been_prompted( bool?hasBeenPromptedForPrn ) { // When var result = ProfessionalRegistrationNumberHelper.GetHasProfessionalRegistrationNumberForView( hasBeenPromptedForPrn, "prn" ); // Then result.Should().BeNull(); }
public void ValidateProfessionalRegistrationNumber_does_not_set_errors_when_valid_prn() { // Given var state = new ModelStateDictionary(); const string validPrn = "abc-123"; // When ProfessionalRegistrationNumberHelper.ValidateProfessionalRegistrationNumber( state, true, validPrn ); // Then state.IsValid.Should().BeTrue(); }
public IActionResult Index(EditDelegateFormData formData, int delegateId) { var centreId = User.GetCentreId(); promptsService.ValidateCentreRegistrationPrompts(formData, centreId, ModelState); if (!userService.NewAliasIsValid(formData.AliasId, delegateId, centreId)) { ModelState.AddModelError( nameof(EditDelegateFormData.AliasId), "A user with this alias is already registered at this centre" ); } ProfessionalRegistrationNumberHelper.ValidateProfessionalRegistrationNumber( ModelState, formData.HasProfessionalRegistrationNumber, formData.ProfessionalRegistrationNumber ); if (!ModelState.IsValid) { return(ReturnToEditDetailsViewWithErrors(formData, delegateId, centreId)); } if (!userService.NewEmailAddressIsValid(formData.Email !, null, delegateId, centreId)) { ModelState.AddModelError( nameof(EditDetailsFormData.Email), "A user with this email is already registered at this centre" ); return(ReturnToEditDetailsViewWithErrors(formData, delegateId, centreId)); } var(accountDetailsData, centreAnswersData) = AccountDetailsDataHelper.MapToUpdateAccountData( formData, delegateId, User.GetCentreId() ); userService.UpdateUserAccountDetailsViaDelegateAccount(accountDetailsData, centreAnswersData); return(RedirectToAction("Index", "ViewDelegate", new { delegateId })); }
public void ValidateProfessionalRegistrationNumber_sets_error_when_hasPrn_is_not_set() { // Given var state = new ModelStateDictionary(); // When ProfessionalRegistrationNumberHelper.ValidateProfessionalRegistrationNumber( state, null, null ); // Then using (new AssertionScope()) { state.IsValid.Should().BeFalse(); state.Values.First().Errors.Should().OnlyContain(e => e.ErrorMessage == "Select a professional registration number status"); } }
public void ValidateProfessionalRegistrationNumber_does_not_set_errors_when_not_delegate_or_has_no_prn( bool isDelegate, bool hasPrn ) { // Given var state = new ModelStateDictionary(); // When ProfessionalRegistrationNumberHelper.ValidateProfessionalRegistrationNumber( state, hasPrn, null, isDelegate ); // Then state.IsValid.Should().BeTrue(); }
public IActionResult LearnerInformation(LearnerInformationViewModel model) { var data = TempData.Peek <RegistrationData>() !; ProfessionalRegistrationNumberHelper.ValidateProfessionalRegistrationNumber( ModelState, model.HasProfessionalRegistrationNumber, model.ProfessionalRegistrationNumber ); if (!ModelState.IsValid) { SetJobGroupOptions(model); return(View(model)); } data.SetLearnerInformation(model); TempData.Set(data); return(RedirectToAction("Password")); }
public void ValidateProfessionalRegistrationNumber_sets_error_when_prn_is_invalid( string prn, string expectedError ) { // Given var state = new ModelStateDictionary(); // When ProfessionalRegistrationNumberHelper.ValidateProfessionalRegistrationNumber( state, true, prn ); // Then using (new AssertionScope()) { state.IsValid.Should().BeFalse(); state.Values.First().Errors.Should().OnlyContain(e => e.ErrorMessage == expectedError); } }