public void RegistrationPromptBulkPost_updates_temp_data_and_redirects_to_configure_answers() { // Given var inputViewModel = new BulkRegistrationPromptAnswersViewModel("Test\r\nAnswer", true, null); var initialPromptModel = new AddRegistrationPromptSelectPromptViewModel(1, true); var initialConfigureAnswersViewModel = new RegistrationPromptAnswersViewModel("Test"); var expectedViewModel = new RegistrationPromptAnswersViewModel("Test\r\nAnswer"); var initialTempData = new AddRegistrationPromptData { SelectPromptViewModel = initialPromptModel, ConfigureAnswersViewModel = initialConfigureAnswersViewModel, }; registrationPromptsController.TempData.Set(initialTempData); // When var result = registrationPromptsController.AddRegistrationPromptBulkPost(inputViewModel); // Then using (new AssertionScope()) { AssertSelectPromptViewModelIsExpectedModel(initialPromptModel); AssertPromptAnswersViewModelIsExpectedModel(expectedViewModel); result.Should().BeRedirectToActionResult().WithActionName("AddRegistrationPromptConfigureAnswers"); } }
public void RegistrationPromptBulkPost_updates_temp_data_and_redirects_to_configure_answers() { // Given var inputViewModel = new BulkRegistrationPromptAnswersViewModel("Test\r\nAnswer", true, null); var initialPromptData = new AddRegistrationPromptSelectPromptData(1, true, "prompt"); var initialAnswersData = new RegistrationPromptAnswersTempData("Test"); var expectedAnswersData = new RegistrationPromptAnswersTempData("Test\r\nAnswer"); var initialTempData = new AddRegistrationPromptTempData { SelectPromptData = initialPromptData, ConfigureAnswersTempData = initialAnswersData, }; A.CallTo( () => multiPageFormService.GetMultiPageFormData <AddRegistrationPromptTempData>( MultiPageFormDataFeature.AddRegistrationPrompt, registrationPromptsController.TempData ) ).Returns(initialTempData); // When var result = registrationPromptsController.AddRegistrationPromptBulkPost(inputViewModel); // Then using (new AssertionScope()) { AssertMultiPageFormDataIsUpdatedCorrectly(initialPromptData, expectedAnswersData); result.Should().BeRedirectToActionResult().WithActionName("AddRegistrationPromptConfigureAnswers"); } }
EditRegistrationPromptBulkPost_adds_model_error_if_trimmed_case_insensitive_bulk_edit_is_not_unique() { // Given var model = new BulkRegistrationPromptAnswersViewModel("test\r\n tEsT ", false, 1); // When var result = registrationPromptsController.EditRegistrationPromptBulkPost(model); // Then using (new AssertionScope()) { result.As <ViewResult>().Model.Should().BeOfType <BulkRegistrationPromptAnswersViewModel>(); AssertModelStateErrorIsExpected(result, "The list of responses contains duplicate options"); } }
public void RegistrationPromptBulkPost_updates_temp_data_and_redirects_to_edit() { // Given var inputViewModel = new BulkRegistrationPromptAnswersViewModel("Test\r\nAnswer", false, 1); var initialEditViewModel = new EditRegistrationPromptViewModel(1, "Prompt", false, "Test"); var initialTempData = new EditRegistrationPromptTempData { PromptNumber = initialEditViewModel.PromptNumber, Prompt = initialEditViewModel.Prompt, Mandatory = initialEditViewModel.Mandatory, OptionsString = initialEditViewModel.OptionsString, Answer = initialEditViewModel.Answer, IncludeAnswersTableCaption = initialEditViewModel.IncludeAnswersTableCaption, }; A.CallTo( () => multiPageFormService.GetMultiPageFormData <EditRegistrationPromptTempData>( MultiPageFormDataFeature.EditRegistrationPrompt, registrationPromptsController.TempData ) ).Returns(initialTempData); // When var result = registrationPromptsController.EditRegistrationPromptBulkPost(inputViewModel); // Then using (new AssertionScope()) { A.CallTo( () => multiPageFormService.SetMultiPageFormData( A <EditRegistrationPromptTempData> .That.Matches( d => d.PromptNumber == initialTempData.PromptNumber && d.Prompt == initialTempData.Prompt && d.Mandatory == initialTempData.Mandatory && d.Answer == initialTempData.Answer && d.IncludeAnswersTableCaption == initialTempData.IncludeAnswersTableCaption && d.OptionsString == inputViewModel.OptionsString ), MultiPageFormDataFeature.EditRegistrationPrompt, registrationPromptsController.TempData ) ).MustHaveHappenedOnceExactly(); result.Should().BeRedirectToActionResult().WithActionName("EditRegistrationPrompt"); } }
public void RegistrationPromptBulkPost_updates_temp_data_and_redirects_to_edit() { // Given var inputViewModel = new BulkRegistrationPromptAnswersViewModel("Test\r\nAnswer", false, 1); var initialEditViewModel = new EditRegistrationPromptViewModel(1, "Prompt", false, "Test"); var expectedViewModel = new EditRegistrationPromptViewModel(1, "Prompt", false, "Test\r\nAnswer"); var initialTempData = new EditRegistrationPromptData(initialEditViewModel); registrationPromptsController.TempData.Set(initialTempData); // When var result = registrationPromptsController.EditRegistrationPromptBulkPost(inputViewModel); // Then using (new AssertionScope()) { AssertEditTempDataIsExpected(expectedViewModel); result.Should().BeRedirectToActionResult().WithActionName("EditRegistrationPrompt"); } }