public IActionResult WholeStandardOrVersion(string iFateReferenceNumber, WholeStandardOrVersionViewModel model) { if (string.IsNullOrWhiteSpace(model.WithdrawalType)) { ModelState.AddModelError(nameof(model.WithdrawalType), "Select whole standard or version(s)"); } if (ModelState.IsValid) { if (model.WithdrawalType == WithdrawalType.WholeStandard) { return(RedirectToAction( nameof(CheckWithdrawalRequest), nameof(ApplyForWithdrawalController).RemoveController(), new { iFateReferenceNumber = iFateReferenceNumber, backAction = nameof(WholeStandardOrVersion) })); } else { return(RedirectToAction( nameof(ReviewStandardVersions), nameof(ApplyForWithdrawalController).RemoveController(), new { iFateReferenceNumber = iFateReferenceNumber })); } } else { return(View(model)); } }
public void And_No_Option_Is_Selected_Then_Error_Is_Returned() { // Arrange var model = new WholeStandardOrVersionViewModel() { WithdrawalType = null }; // Act var result = _sut.WholeStandardOrVersion("ST0001", model) as ViewResult; // Assert _sut.ModelState.IsValid.Should().BeFalse(); _sut.ModelState["WithdrawalType"].Errors.Should().Contain(x => x.ErrorMessage == "Select whole standard or version(s)"); }
public void And_Specific_Version_Is_Selected_Then_Redirected_To_ReviewStandardVersions() { // Arrange var model = new WholeStandardOrVersionViewModel() { WithdrawalType = WithdrawalType.SpecificVersions }; // Act var result = _sut.WholeStandardOrVersion("ST0001", model) as RedirectToActionResult; // Assert result.ActionName.Should().Be(nameof(ApplyForWithdrawalController.ReviewStandardVersions)); result.ControllerName.Should().Be(nameof(ApplyForWithdrawalController).RemoveController()); result.RouteValues.GetValueOrDefault("iFateReferenceNumber").Should().Be("ST0001"); }