Exemple #1
0
        public void IndexUrlNameTest(string urlName, bool validJobProfile, bool isContentPreviewMode)
        {
            //Set up comman call
            SetUpDependeciesAndCall(validJobProfile, isContentPreviewMode);

            //Instantiate & Act
            using (var jobprofileController = new JobProfileDetailsController(
                       webAppContextFake, repositoryFake, loggerFake, sitefinityPage, mapperCfg.CreateMapper(), asyncHelper, searchQueryService))
            {
                //Act
                var indexWithUrlNameMethodCall = jobprofileController.WithCallTo(c => c.Index(urlName));

                if (validJobProfile)
                {
                    indexWithUrlNameMethodCall
                    .ShouldRenderDefaultView()
                    .WithModel <JobProfileDetailsViewModel>(vm =>
                    {
                        vm.SalaryText.Should().BeEquivalentTo(jobprofileController.SalaryText);
                        vm.HoursText.Should().BeEquivalentTo(jobprofileController.HoursText);
                        vm.MaxAndMinHoursAreBlankText.Should().BeEquivalentTo(jobprofileController
                                                                              .MaxAndMinHoursAreBlankText);
                        vm.HoursTimePeriodText.Should().BeEquivalentTo(jobprofileController.HoursTimePeriodText);
                        vm.AlternativeTitle.Should().BeEquivalentTo(dummyJobProfile.AlternativeTitle);
                        vm.SalaryRange.Should().BeEquivalentTo(dummyJobProfile.SalaryRange);
                        vm.Overview.Should().BeEquivalentTo(dummyJobProfile.Overview);
                        vm.Title.Should().BeEquivalentTo(dummyJobProfile.Title);
                        vm.MaximumHours.Should().BeEquivalentTo(dummyJobProfile.MaximumHours.ToString());
                        vm.MinimumHours.Should().BeEquivalentTo(dummyJobProfile.MinimumHours.ToString());
                        vm.WorkingHoursDetails.Should().BeEquivalentTo(dummyJobProfile.WorkingHoursDetails);
                        vm.WorkingPatternDetails.Should().BeEquivalentTo(dummyJobProfile.WorkingPatternDetails);
                        vm.WorkingPattern.Should().BeEquivalentTo(dummyJobProfile.WorkingPattern);
                        vm.SalaryStarter.Should().Be(starterSalary);
                        vm.SalaryExperienced.Should().Be(experiencedSalary);
                        vm.SalaryContextLink.Should().Be(jobprofileController.SalaryContextLink);
                        vm.SalaryContextText.Should().Be(jobprofileController.SalaryContextText);
                    })
                    .AndNoModelErrors();
                }
                else
                {
                    indexWithUrlNameMethodCall.ShouldGiveHttpStatus(404);
                }

                if (!isContentPreviewMode)
                {
                    A.CallTo(() => repositoryFake.GetByUrlName(A <string> ._)).MustHaveHappened();
                }
                else
                {
                    A.CallTo(() => repositoryFake.GetByUrlNameForPreview(A <string> ._)).MustHaveHappened();
                }
            }
        }
Exemple #2
0
        public void IndexTest(bool inContentAuthoringSite, bool isContentPreviewMode)
        {
            //Set up comman call
            SetUpDependeciesAndCall(true, isContentPreviewMode);

            //Set up calls particular to this test case
            A.CallTo(() => webAppContextFake.IsContentAuthoringSite).Returns(inContentAuthoringSite);

            //Instantiate & Act
            using (var jobprofileController = new JobProfileDetailsController(
                       webAppContextFake, repositoryFake, loggerFake, sitefinityPage, mapperCfg.CreateMapper(), asyncHelper, searchQueryService))
            {
                //Act
                var indexMethodCall = jobprofileController.WithCallTo(c => c.Index());

                //Assert
                //should get back a default profile for design mode
                if (inContentAuthoringSite)
                {
                    indexMethodCall
                    .ShouldRenderDefaultView()
                    .WithModel <JobProfileDetailsViewModel>(vm =>
                    {
                        vm.SalaryText.Should().BeEquivalentTo(jobprofileController.SalaryText);
                        vm.HoursText.Should().BeEquivalentTo(jobprofileController.HoursText);
                        vm.MaxAndMinHoursAreBlankText.Should().BeEquivalentTo(jobprofileController
                                                                              .MaxAndMinHoursAreBlankText);
                        vm.HoursTimePeriodText.Should().BeEquivalentTo(jobprofileController.HoursTimePeriodText);
                        vm.AlternativeTitle.Should().BeEquivalentTo(dummyJobProfile.AlternativeTitle);
                        vm.Overview.Should().BeEquivalentTo(dummyJobProfile.Overview);
                        vm.Title.Should().BeEquivalentTo(dummyJobProfile.Title);
                        vm.MaximumHours.Should().Be(dummyJobProfile.MaximumHours.ToString());
                        vm.MinimumHours.Should().BeEquivalentTo(dummyJobProfile.MinimumHours.ToString());
                        vm.WorkingHoursDetails.Should().BeEquivalentTo(dummyJobProfile.WorkingHoursDetails);
                        vm.WorkingPatternDetails.Should().BeEquivalentTo(dummyJobProfile.WorkingPatternDetails);
                        vm.WorkingPattern.Should().BeEquivalentTo(dummyJobProfile.WorkingPattern);
                        vm.SalaryStarter.Should().Be(starterSalary);
                        vm.SalaryExperienced.Should().Be(experiencedSalary);
                        vm.SalaryContextLink.Should().Be(jobprofileController.SalaryContextLink);
                        vm.SalaryContextText.Should().Be(jobprofileController.SalaryContextText);
                    })
                    .AndNoModelErrors();

                    AssertActions(isContentPreviewMode);
                }
                else
                {
                    indexMethodCall.ShouldRedirectTo("\\");
                }
            }
        }