コード例 #1
0
        private void AnEmployerHasASingleSubmittedApplication(Guid applicationId, BankDetailsStatus bankDetailsStatus = BankDetailsStatus.Completed)
        {
            _testData = new TestData.Account.WithInitialApplicationForASingleEntity();
            _testContext.TestDataStore.Add("HashedAccountId", _testData.HashedAccountId);
            _testContext.TestDataStore.Add("HashedAccountLegalEntityId", _testData.HashedAccountLegalEntityId);
            _testContext.AddOrReplaceClaim(EmployerClaimTypes.Account, _testData.HashedAccountId);

            var applications = new List <ApprenticeApplicationModel>
            {
                _fixture.Build <ApprenticeApplicationModel>()
                .With(p => p.AccountId, _testData.AccountId)
                .Create()
            };

            applications[0].Status = "Submitted";
            var getApplications = new GetApplicationsModel {
                ApprenticeApplications = applications, BankDetailsStatus = bankDetailsStatus, FirstSubmittedApplicationId = applicationId
            };

            _testContext.EmployerIncentivesApi.MockServer
            .Given(
                Request
                .Create()
                .WithPath($"/accounts/{_testData.AccountId}/legalentity/{_testData.AccountLegalEntityId}/applications")
                .UsingGet()
                )
            .RespondWith(
                Response.Create()
                .WithStatusCode(HttpStatusCode.OK)
                .WithBody(JsonConvert.SerializeObject(getApplications)));
        }
コード例 #2
0
        public async Task Then_the_bank_details_banner_content_should_be_not_shown_if_none_supplied_and_the_cut_off_date_has_elapsed_and_no_applications_submitted(BankDetailsStatus bankDetailsStatus)
        {
            // Arrange
            var webConfig = new WebConfigurationOptions {
                ApplicationShutterPageDate = DateTime.Now.ToString()
            };

            _webConfiguration.Setup(x => x.Value).Returns(webConfig);
            var getApplicationsResponse = new GetApplicationsModel {
                ApprenticeApplications = new List <ApprenticeApplicationModel>(), FirstSubmittedApplicationId = null, BankDetailsStatus = bankDetailsStatus
            };

            _applicationService.Setup(x => x.GetList(_accountId, _accountLegalEntityId)).ReturnsAsync(getApplicationsResponse);

            _sut = new Web.Controllers.HubController(_legalEntitiesService.Object, _applicationService.Object, _externalLinksConfiguration.Object, _webConfiguration.Object);

            // Act
            var viewResult = await _sut.Index(_accountId, _accountLegalEntityId) as ViewResult;

            // Assert
            var viewModel = viewResult.Model as HubPageViewModel;

            viewModel.ShowBankDetailsRequired.Should().BeFalse();
        }
コード例 #3
0
        public async Task Then_the_bank_details_banner_content_should_be_shown_if_none_supplied_and_the_cut_off_date_has_elapsed(BankDetailsStatus bankDetailsStatus)
        {
            // Arrange
            var applicationsResponse = new GetApplicationsModel
            {
                BankDetailsStatus           = bankDetailsStatus,
                ApprenticeApplications      = _fixture.CreateMany <ApprenticeApplicationModel>(5).ToList(),
                FirstSubmittedApplicationId = Guid.NewGuid()
            };

            _applicationService.Setup(x => x.GetList(_accountId, _accountLegalEntityId)).ReturnsAsync(applicationsResponse);

            // Act
            var viewResult = await _sut.Index(_accountId, _accountLegalEntityId) as ViewResult;

            // Assert
            var viewModel = viewResult.Model as HubPageViewModel;

            viewModel.ShowBankDetailsRequired.Should().BeTrue();
        }
コード例 #4
0
        public async Task Then_the_viewmodel_reflects_that_the_account_holder_needs_to_provide_bank_details(BankDetailsStatus status)
        {
            // Arrange
            var applicationsResponse = new GetApplicationsModel
            {
                BankDetailsStatus           = status,
                ApprenticeApplications      = _fixture.CreateMany <ApprenticeApplicationModel>(5).ToList(),
                FirstSubmittedApplicationId = Guid.NewGuid()
            };

            _applicationService.Setup(x => x.GetList(_accountId, _accountLegalEntityId)).ReturnsAsync(applicationsResponse);

            // Act
            var viewResult = await _sut.Index(_accountId, _accountLegalEntityId) as ViewResult;

            // Assert
            viewResult.Should().NotBeNull();
            var model = viewResult.Model as HubPageViewModel;

            model.Should().NotBeNull();
            model.OrganisationName.Should().Be(_legalEntities[0].Name);
            model.ShowBankDetailsRequired.Should().BeTrue();
            model.BankDetailsApplicationId.Should().NotBeEmpty();
            model.AccountId.Should().Be(_accountId);
            model.AccountLegalEntityId.Should().Be(_accountLegalEntityId);
        }