コード例 #1
0
        public void IndexDefaultTest(bool inContentAuthoringSiteAndNotPreview)
        {
            //Setup the fakes and dummies
            var repositoryFake    = A.Fake <IJobProfileRepository>(ops => ops.Strict());
            var loggerFake        = A.Fake <IApplicationLogger>();
            var webAppContextFake = A.Fake <IWebAppContext>(ops => ops.Strict());

            // Set up calls
            A.CallTo(() => webAppContextFake.IsContentAuthoringAndNotPreviewMode).Returns(inContentAuthoringSiteAndNotPreview);

            //Instantiate & Act
            var jobProfileSettingsAndPreviewController = new JobProfileSettingsAndPreviewController(repositoryFake, webAppContextFake, loggerFake);

            //Act
            var indexResult = jobProfileSettingsAndPreviewController.WithCallTo(c => c.Index());

            //Assert
            if (inContentAuthoringSiteAndNotPreview)
            {
                indexResult.ShouldRenderDefaultView().WithModel <JobProfileSettingsAndPreviewModel>(vm =>
                {
                    vm.DefaultJobProfileUrl.Should().BeEquivalentTo(jobProfileSettingsAndPreviewController.DefaultJobProfileUrlName);
                })
                .AndNoModelErrors();
            }
            else
            {
                indexResult.ShouldReturnEmptyResult();
            }
        }
コード例 #2
0
        public void IndexDefaultUrlTest(string urlName, bool isContentAuthoringSite, bool expectation)
        {
            //Setup the fakes and dummies
            var repositoryFake    = A.Fake <IJobProfileRepository>(ops => ops.Strict());
            var loggerFake        = A.Fake <IApplicationLogger>();
            var webAppContextFake = A.Fake <IWebAppContext>(ops => ops.Strict());

            // Set up calls
            A.CallTo(() => webAppContextFake.IsContentAuthoringSite).Returns(isContentAuthoringSite);
            A.CallTo(() => webAppContextFake.SetVocCookie(Constants.VocPersonalisationCookieName, A <string> ._)).DoesNothing();

            //Instantiate & Act
            var jobProfileSettingsAndPreviewController = new JobProfileSettingsAndPreviewController(repositoryFake, webAppContextFake, loggerFake);

            //Act
            var indexResult = jobProfileSettingsAndPreviewController.WithCallTo(c => c.Index(urlName));

            //Assert
            if (expectation)
            {
                indexResult.ShouldRenderDefaultView().WithModel <JobProfileSettingsAndPreviewModel>(vm =>
                {
                    vm.ShouldSetVocCookie.Should().Be(expectation);
                    vm.VocSetPersonalisationCookieNameAndValue.Should().NotBeNullOrWhiteSpace();
                    vm.VocSetPersonalisationCookieNameAndValue.Should().Contain(urlName);
                })
                .AndNoModelErrors();
            }

            if (string.IsNullOrWhiteSpace(urlName) || isContentAuthoringSite)
            {
                indexResult.ShouldReturnEmptyResult();
            }

            A.CallTo(() => webAppContextFake.SetVocCookie(Constants.VocPersonalisationCookieName, A <string> ._)).MustNotHaveHappened();
        }