public void EndVisit_ShouldEndSession([Substitute] ControllerContext ctx, [Frozen] IDemoStateService demoState, [Greedy] DemoController sut) { demoState.IsDemoEnabled.Returns(true); sut.ControllerContext = ctx; sut.EndVisit(); ctx.HttpContext.Session.Received(1).Abandon(); }
public DemoController(IDemoStateService demoStateService, IExperienceDataFactory experienceDataFactory) { this.DemoStateService = demoStateService; this.ExperienceDataFactory = experienceDataFactory; }
public void DemoContent_RenderingContextNotDerivedFromSpecificTemplate_ShouldThrowException(Db db, [Substitute] Sitecore.Mvc.Presentation.PageContext pageContext, [Frozen] IDemoStateService demoState, [Greedy] DemoController sut, Item ctxItem) { pageContext.Database.Returns(db.Database); Sitecore.Mvc.Common.ContextService.Get().Push(pageContext); demoState.IsDemoEnabled.Returns(true); using (RenderingContext.EnterContext(new Rendering(), ctxItem)) { sut.Invoking(x => x.DemoContent()).Should().Throw <InvalidDataSourceItemException>(); } }
public void EndVisit_ShouldReturnRedirectToRoot([Substitute] ControllerContext ctx, [Frozen] IDemoStateService demoState, [Greedy] DemoController sut) { demoState.IsDemoEnabled.Returns(true); sut.ControllerContext = ctx; sut.EndVisit().As <HttpStatusCodeResult>().StatusCode.Should().Be((int)HttpStatusCode.OK); }
public void DemoContent_RenderingContextItemInitialized_ShouldReturnDemoContentView(Db db, [Substitute] Sitecore.Mvc.Presentation.PageContext pageContext, [Frozen] IDemoStateService demoState, [Greedy] DemoController sut, [Content] DemoContentItem item) { pageContext.Database.Returns(db.Database); Sitecore.Mvc.Common.ContextService.Get().Push(pageContext); demoState.IsDemoEnabled.Returns(true); using (RenderingContext.EnterContext(new Rendering(), db.GetItem(item.ID))) { sut.DemoContent().As <ViewResult>().Model.Should().BeOfType <DemoContent>(); } }
public void ExperienceData_InitializedTrackerAndPreviewMode_ReturnEmptyResult(IKeyBehaviorCache keyBehaviorCache, Session session, CurrentInteraction currentInteraction, ITracker tracker, Contact contact, [Frozen] IProfileProvider profileProvider, [Frozen] IDemoStateService demoState, [Greedy] DemoController sut) { demoState.IsDemoEnabled.Returns(true); tracker.Interaction.Returns(currentInteraction); tracker.Session.Returns(session); var attachments = new Dictionary <string, object> { ["KeyBehaviorCache"] = new Analytics.Tracking.KeyBehaviorCache(keyBehaviorCache) }; contact.Attachments.Returns(attachments); tracker.Contact.Returns(contact); var fakeSite = new FakeSiteContext(new StringDictionary { { "enablePreview", "true" }, { "masterDatabase", "master" } }) as SiteContext; using (new SiteContextSwitcher(fakeSite)) { Sitecore.Context.Site.SetDisplayMode(DisplayMode.Preview, DisplayModeDuration.Remember); using (new TrackerSwitcher(tracker)) { sut.ExperienceData().Should().BeOfType <EmptyResult>(); } } }
public void ExperienceData_InitializedTrackerAndNormalMode_ReturnExperienceData(IKeyBehaviorCache keyBehaviorCache, Session session, CurrentInteraction currentInteraction, ITracker tracker, Contact contact, [Frozen] IProfileProvider profileProvider, [Frozen] IDemoStateService demoState, [Frozen] IExperienceDataFactory dataFactory, [Greedy] DemoController sut) { demoState.IsDemoEnabled.Returns(true); dataFactory.Get().Returns(new ExperienceData()); tracker.Interaction.Returns(currentInteraction); tracker.Session.Returns(session); var attachments = new Dictionary <string, object> { ["KeyBehaviorCache"] = new Analytics.Tracking.KeyBehaviorCache(keyBehaviorCache) }; contact.Attachments.Returns(attachments); tracker.Contact.Returns(contact); var fakeSite = new FakeSiteContext(new StringDictionary { { "displayMode", "normal" } }) as SiteContext; using (new SiteContextSwitcher(fakeSite)) { using (new TrackerSwitcher(tracker)) { var result = sut.ExperienceData(); result.Should().BeOfType <ViewResult>().Which.Model.Should().BeOfType <ExperienceData>(); } } }
public void ExperienceData_NullInteraction_ReturnNull([Frozen] IDemoStateService demoState, [Greedy] DemoController sut, TrackerSwitcher trackerSwitcher) { demoState.IsDemoEnabled.Returns(true); sut.ExperienceData().Should().BeNull(); }
public FakeTrackerData(IDemoStateService demoStateService) { this.DemoStateService = demoStateService; }