public void ReusedOffSiteViewModel_GivenSelectedValueIsYesOrNo_IsValid(string selectedValue)
        {
            var viewModel = new ReusedOffSiteViewModel(Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid(), A.Dummy <String>(), selectedValue);

            var context = new ValidationContext(viewModel, null, null);
            var results = new List <ValidationResult>();
            var isValid = Validator.TryValidateObject(viewModel, context, results, true);

            Assert.True(isValid);
        }
Example #2
0
        public async void IndexPost_OnSubmitYes_PageRedirectsToCreateSite()
        {
            var model = new ReusedOffSiteViewModel {
                SelectedValue = "Yes"
            };
            var returnId = new Guid();
            var result   = await controller.Index(model) as RedirectToRouteResult;

            result.RouteValues["action"].Should().Be("Index");
            result.RouteValues["controller"].Should().Be("ReusedOffSiteCreateSite");
            result.RouteValues["returnId"].Should().Be(returnId);
        }
Example #3
0
        public async void IndexPost_GivenInvalidViewModel_BreadcrumbShouldBeSet()
        {
            var          organisationId = Guid.NewGuid();
            const string orgName        = "orgName";
            var          model          = new ReusedOffSiteViewModel()
            {
                OrganisationId = organisationId
            };

            controller.ModelState.AddModelError("error", "error");

            A.CallTo(() => cache.FetchOrganisationName(organisationId)).Returns(orgName);

            await controller.Index(model);

            breadcrumb.ExternalActivity.Should().Be(BreadCrumbConstant.AatfReturn);
            breadcrumb.ExternalOrganisation.Should().Be(orgName);
            breadcrumb.OrganisationId.Should().Be(organisationId);
        }
        public virtual async Task <ActionResult> Index(ReusedOffSiteViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                if (viewModel.SelectedValue == "Yes")
                {
                    return(AatfRedirect.ReusedOffSiteCreate(viewModel.ReturnId, viewModel.AatfId, viewModel.OrganisationId));
                }
                else
                {
                    return(AatfRedirect.TaskList(viewModel.ReturnId));
                }
            }
            else
            {
                await SetBreadcrumb(viewModel.OrganisationId, BreadCrumbConstant.AatfReturn, viewModel.AatfId, DisplayHelper.YearQuarterPeriodFormat(TempData["currentQuarter"] as Quarter, TempData["currentQuarterWindow"] as QuarterWindow));

                return(View(viewModel));
            }
        }
        public virtual async Task <ActionResult> Index(Guid organisationId, Guid returnId, Guid aatfId)
        {
            var viewModel = new ReusedOffSiteViewModel()
            {
                OrganisationId = organisationId,
                ReturnId       = returnId,
                AatfId         = aatfId,
                AatfName       = (await cache.FetchAatfData(organisationId, aatfId)).Name
            };

            using (var client = apiClient())
            {
                var @return = await client.SendAsync(User.GetAccessToken(), new GetReturn(returnId, false));
                await SetBreadcrumb(organisationId, BreadCrumbConstant.AatfReturn, aatfId, DisplayHelper.YearQuarterPeriodFormat(@return.Quarter, @return.QuarterWindow));

                TempData["currentQuarter"]       = @return.Quarter;
                TempData["currentQuarterWindow"] = @return.QuarterWindow;
            }
            return(View(viewModel));
        }