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));
            }
        }
示例#2
0
        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)");
        }
示例#3
0
        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");
        }