Exemple #1
0
        public void IndexRedirectTest()
        {
            // Setup
            A.CallTo(() => fakeReportRepository.GetJobProfileApprenticeshipVacancyReport()).Returns(GetDummyReportData(1, 2));
            A.CallTo(() => fakeWebAppContext.RequestQueryString).Returns(query);
            A.CallTo(() => fakeWebAppContext.GetCurrentQueryString(A <Dictionary <string, object> > ._)).Returns("http://url");
            query.Add("NOTctx", "something");

            // Assign
            var reportController = new ApprenticeshipVacancyReportController(fakeLoggingService, fakeReportRepository, fakeWebAppContext, fakeCachingPolicy);

            // Act
            var indexMethodCall = reportController.WithCallTo(c => c.Index());

            // Assert
            indexMethodCall.ShouldRedirectTo("http://url");
            A.CallTo(() => fakeReportRepository.GetJobProfileApprenticeshipVacancyReport()).MustNotHaveHappened();
        }
Exemple #2
0
        public void IndexTest(int numberRecords, int numberOfApprenticeship)
        {
            // Setup
            A.CallTo(() => fakeReportRepository.GetJobProfileApprenticeshipVacancyReport()).Returns(GetDummyReportData(numberRecords, numberOfApprenticeship));
            A.CallTo(() => fakeWebAppContext.RequestQueryString).Returns(query);
            A.CallTo(() => fakeCachingPolicy.Execute(fakeReportRepository.GetJobProfileApprenticeshipVacancyReport, A <CachePolicyType> ._, A <string> ._, A <string> ._)).Returns(GetDummyReportData(numberRecords, numberOfApprenticeship));
            query.Add("ctx", "something");

            // Assign
            var reportController = new ApprenticeshipVacancyReportController(fakeLoggingService, fakeReportRepository, fakeWebAppContext, fakeCachingPolicy);

            // Act
            var indexMethodCall = reportController.WithCallTo(c => c.Index());

            // Assert
            indexMethodCall
            .ShouldRenderDefaultView()
            .WithModel <JobProfileApprenticeshipVacancyReportViewModel>(vm =>
            {
                vm.ReportData.Should().HaveCount(numberRecords);
                int ii = 0;
                foreach (var r in vm.ReportData)
                {
                    if (numberOfApprenticeship > 0)
                    {
                        r.AV1Title.Should().Contain("One");
                    }
                    if (numberOfApprenticeship > 1)
                    {
                        r.AV2Title.Should().Contain("Two");
                    }

                    r.Frameworks.Should().Be($"DummyFramework_1{ii}-(LARSF_1{ii})|DummyFramework_2{ii}-(LARSF_2{ii})");
                    r.Standards.Should().Be($"DummyStandard_1{ii}-(LARS_1{ii})|DummyStandard_2{ii}-(LARS_2{ii})");
                    ii++;
                }
                vm.ExecutionTime.Should().BeGreaterThan(TimeSpan.MinValue);
            })
            .AndNoModelErrors();
            A.CallTo(() => fakeCachingPolicy.Execute(fakeReportRepository.GetJobProfileApprenticeshipVacancyReport, A <CachePolicyType> ._, A <string> ._, A <string> ._)).MustHaveHappened();
        }
Exemple #3
0
        public void IndexNullDataItemsTest()
        {
            // Setup
            A.CallTo(() => fakeReportRepository.GetJobProfileApprenticeshipVacancyReport()).Returns(GetDummyReportDataWithNulls());
            A.CallTo(() => fakeWebAppContext.RequestQueryString).Returns(query);
            A.CallTo(() => fakeCachingPolicy.Execute(fakeReportRepository.GetJobProfileApprenticeshipVacancyReport, A <CachePolicyType> ._, A <string> ._, A <string> ._)).Returns(GetDummyReportDataWithNulls());
            query.Add("ctx", "something");

            // Assign
            var reportController = new ApprenticeshipVacancyReportController(fakeLoggingService, fakeReportRepository, fakeWebAppContext, fakeCachingPolicy);

            // Act
            var indexMethodCall = reportController.WithCallTo(c => c.Index());

            // Assert
            indexMethodCall
            .ShouldRenderDefaultView()
            .WithModel <JobProfileApprenticeshipVacancyReportViewModel>(vm =>
            {
                vm.ReportData.Should().HaveCount(1);
            })
            .AndNoModelErrors();
        }