public async Task RemoveUkprn_when_invalid_ModelState_does_not_call_RemoveFromAllowedUkprns(int ukprn) { _controller.ModelState.AddModelError("Confirm", "Forced ModelState error"); Assert.IsFalse(_controller.ModelState.IsValid, "Test requires invalid ModelState"); var request = new RemoveUkprnFromAllowedProvidersListViewModel(); var result = await _controller.RemoveUkprn(ukprn, request); _applicationApplyApiClient.Verify(x => x.RemoveFromAllowedProviders(It.IsAny <int>()), Times.Never); }
public void Before_each_test() { _validator = new RemoveUkprnFromAllowProvidersListValidator(); _viewModel = new RemoveUkprnFromAllowedProvidersListViewModel { AllowedProvider = new AllowedProvider { Ukprn = 12345678 }, Confirm = false }; }
public async Task RemoveUkprn_when_invalid_ModelState_PRG_redirects_to_ConfirmRemoveUkprn(int ukprn) { _controller.ModelState.AddModelError("Confirm", "Forced ModelState error"); Assert.IsFalse(_controller.ModelState.IsValid, "Test requires invalid ModelState"); var request = new RemoveUkprnFromAllowedProvidersListViewModel(); var result = await _controller.RemoveUkprn(ukprn, request); var redirectResult = result as RedirectToActionResult; Assert.AreEqual(nameof(_controller.ConfirmRemoveUkprn), redirectResult.ActionName); }
public async Task RemoveUkprn_when_valid_ModelState_and_Confirm_False_does_not_call_RemoveFromAllowedProviders(int ukprn) { Assert.IsTrue(_controller.ModelState.IsValid, "Test requires valid ModelState"); var request = new RemoveUkprnFromAllowedProvidersListViewModel { Confirm = false }; var result = await _controller.RemoveUkprn(ukprn, request); _applicationApplyApiClient.Verify(x => x.RemoveFromAllowedProviders(ukprn), Times.Never); }
public async Task RemoveUkprn_when_valid_ModelState_and_Confirm_True_calls_RemoveFromAllowedProviders_with_expected_parameters(int ukprn) { Assert.IsTrue(_controller.ModelState.IsValid, "Test requires valid ModelState"); var request = new RemoveUkprnFromAllowedProvidersListViewModel { Confirm = true }; var result = await _controller.RemoveUkprn(ukprn, request); _applicationApplyApiClient.Verify(x => x.RemoveFromAllowedProviders(ukprn), Times.Once); }
public async Task <IActionResult> ConfirmRemoveUkprn(string ukprn) { if (!int.TryParse(ukprn, out var providerUkprn)) { return(RedirectToAction(nameof(Index))); } var model = new RemoveUkprnFromAllowedProvidersListViewModel { AllowedProvider = await _applyApiClient.GetAllowedProviderDetails(providerUkprn) }; return(View("~/Views/Roatp/AllowedProviders/ConfirmRemoveUkprn.cshtml", model)); }
public async Task RemoveUkprn_when_valid_ModelState_and_Confirm_False_redirects_to_Index(int ukprn) { Assert.IsTrue(_controller.ModelState.IsValid, "Test requires valid ModelState"); var request = new RemoveUkprnFromAllowedProvidersListViewModel { Confirm = false }; var result = await _controller.RemoveUkprn(ukprn, request); var redirectResult = result as RedirectToActionResult; Assert.AreEqual(nameof(_controller.Index), redirectResult.ActionName); }
public async Task <IActionResult> RemoveUkprn(int ukprn, RemoveUkprnFromAllowedProvidersListViewModel model) { if (!ModelState.IsValid) { return(RedirectToAction(nameof(ConfirmRemoveUkprn), new { ukprn })); } if (model.Confirm is true) { await _applyApiClient.RemoveFromAllowedProviders(ukprn); return(RedirectToAction(nameof(UkprnRemoved), new { ukprn })); } else { return(RedirectToAction(nameof(Index))); } }
public async Task ConfirmRemoveUkprn_creates_correct_viewmodel(int ukprn) { _applicationApplyApiClient.Setup(x => x.GetAllowedProviderDetails(ukprn)).ReturnsAsync(new AllowedProvider { Ukprn = ukprn }); var expectedViewModel = new RemoveUkprnFromAllowedProvidersListViewModel { AllowedProvider = new AllowedProvider { Ukprn = ukprn } }; var result = await _controller.ConfirmRemoveUkprn(ukprn.ToString()); var viewResult = result as ViewResult; var viewModel = viewResult?.Model as RemoveUkprnFromAllowedProvidersListViewModel; Assert.IsNotNull(viewModel); Assert.IsNotNull(viewModel.AllowedProvider); Assert.AreEqual(expectedViewModel.AllowedProvider.Ukprn, viewModel.AllowedProvider.Ukprn); }