public async Task <IActionResult> ConfirmAddress(CertificateRecipientViewModel vm)
        {
            var username = GetUsernameFromClaim();

            return(await SaveViewModel(vm,
                                       returnToIfModelNotValid : "~/Views/Certificate/ConfirmAddress.cshtml",
                                       nextAction : RedirectToAction("Check", "CertificateCheck"), action : CertificateActions.ConfirmAddress));
        }
Ejemplo n.º 2
0
        public async Task AndPostingConfirmAddressForSendToEmployer_RedirectsToCheck(CertificateRecipientViewModel vm)
        {
            vm.SendTo = CertificateSendTo.Employer;
            vm.Id     = CertificateIdWithPreviousAddress;

            var result = await _certificateAddressController.ConfirmAddress(vm) as RedirectToActionResult;

            result.ControllerName.Should().Be("CertificateCheck");
            result.ActionName.Should().Be("Check");
        }
        public void Arrange()
        {
            var certificateApprenticeDetailsController =
                new CertificateRecipientController(MockedLogger.Object,
                                                   MockHttpContextAccessor.Object,
                                                   ApiClient);

            _result = certificateApprenticeDetailsController.Recipient(Certificate.Id).GetAwaiter().GetResult();

            var result = _result as ViewResult;

            _viewModelResponse = result.Model as CertificateRecipientViewModel;
        }
        public async Task <IActionResult> Recipient(CertificateRecipientViewModel vm)
        {
            var certData = await GetCertificateData(vm.Id);

            if (ModelState.IsValid && vm.RecipientHasChanged(certData))
            {
                // when recipient has been changed the complete journey is required
                SessionService.SetRedirectToCheck(false);
            }

            return(await SaveViewModel(vm,
                                       returnToIfModelNotValid : "~/Views/Certificate/Recipient.cshtml",
                                       nextAction : RedirectToAction("ConfirmAddress", "CertificateAddress"),
                                       action : CertificateActions.Address));
        }
Ejemplo n.º 5
0
 public async Task <IActionResult> Recipient(CertificateRecipientViewModel vm)
 {
     return(await SaveViewModel(vm,
                                returnToIfModelNotValid : "~/Views/Certificate/Recipient.cshtml",
                                nextAction : RedirectToAction("Check", "CertificateCheck"), action : CertificateActions.Recipient));
 }
Ejemplo n.º 6
0
 public async Task <IActionResult> Recipient(CertificateRecipientViewModel vm)
 {
     return(await SaveViewModel(vm,
                                returnToIfModelNotValid : "~/Views/CertificateAmend/Recipient.cshtml",
                                nextAction : RedirectToAction("Check", "CertificateAmend", new { certificateId = vm.Id, fromapproval = vm.FromApproval }), action : CertificateActions.Recipient));
 }
Ejemplo n.º 7
0
        public async Task AndPostingDifferentRecipientForSendToEmployer_RedirectsToConfirm_IfRedirectToCheckSet(CertificateSession session, CertificateRecipientViewModel vm)
        {
            vm.SendTo = CertificateSendTo.Employer;
            vm.Id     = CertificateIdWithPreviousAddress;
            vm.Name   = vm.Name + "_Different";

            var sessionString = JsonConvert.SerializeObject(session);

            _mockSessionService.Setup(s => s.Get(nameof(CertificateSession))).Returns(sessionString);

            var redirectToCheck = true;

            _mockSessionService.Setup(s => s.TryGet <bool>("RedirectToCheck", out redirectToCheck)).Returns(true);

            _mockSessionService.Setup(s => s.Set("RedirectToCheck", It.IsAny <object>())).Callback((string key, object value) => {
                redirectToCheck = (bool)value;
                _mockSessionService.Setup(s => s.TryGet <bool>("RedirectToCheck", out redirectToCheck)).Returns(true);
            });

            var result = await _certificateAddressController.Recipient(vm) as RedirectToActionResult;

            result.ControllerName.Should().Be("CertificateAddress");
            result.ActionName.Should().Be("ConfirmAddress");
        }
Ejemplo n.º 8
0
        public async Task AndPostingSameRecipientForSendToEmployer_ReturnsToCheck_IfRedirectToCheckSet(CertificateSession session, CertificateRecipientViewModel vm)
        {
            vm.SendTo = CertificateSendTo.Employer;
            vm.Id     = CertificateIdWithPreviousAddress;

            var sessionString = JsonConvert.SerializeObject(session);

            _mockSessionService.Setup(s => s.Get(nameof(CertificateSession))).Returns(sessionString);
            var expectedValue = true;

            _mockSessionService.Setup(s => s.TryGet <bool>("RedirectToCheck", out expectedValue)).Returns(true);

            var result = await _certificateAddressController.Recipient(vm) as RedirectToActionResult;

            result.ControllerName.Should().Be("CertificateCheck");
            result.ActionName.Should().Be("Check");
        }