public void Get_PageViews_ReturnReversedPages(ITracker tracker, [Frozen] IContactFacetsProvider contactProfileProvider, [Frozen] IPageViewRepository viewRepository, VisitsRepository visitsRepository) { //Arrange this.InitTracker(tracker); var pages = new List <ICurrentPageContext> { this.GeneratePage(path: "0"), this.GeneratePage(path: "1"), this.GeneratePage(path: "2") }; tracker.Interaction.GetPages().Returns(pages); contactProfileProvider.Contact.Returns(x => tracker.Contact); viewRepository.Get(Arg.Any <ICurrentPageContext>()).Returns(x => new PageView() { Path = x.Arg <ICurrentPageContext>().Url.Path }); using (new TrackerSwitcher(tracker)) { //Act var visits = visitsRepository.Get(); //Assert visits.PageViews.Select(x => x.Path).Should().BeEquivalentTo("2", "1", "0"); } }
public ExperienceData(VisitsRepository visitsRepository, PersonalInfoRepository personalInfoRepository, OnsiteBehaviorRepository onsiteBehaviorRepository, ReferralRepository referralRepository, ITrackerService trackerService) { this.Visits = visitsRepository.Get(); this.PersonalInfo = personalInfoRepository.Get(); this.OnsiteBehavior = onsiteBehaviorRepository.Get(); this.Referral = referralRepository.Get(); this.IsActive = trackerService.IsActive; }
public void Get_Value_ReturnsEngagementValue(int value, ITracker tracker, [Frozen] IContactFacetsProvider contactProfileProvider, VisitsRepository visitsRepository) { //Arrange this.InitTracker(tracker); contactProfileProvider.Contact.Returns(x => tracker.Contact); tracker.Contact.System.Value.Returns(value); using (new TrackerSwitcher(tracker)) { //Act var visits = visitsRepository.Get(); //Assert visits.EngagementValue.Should().Be(value); } }
public void Get_SeveralVisits_ReturnsTotalVisitsCount(int visitCount, ITracker tracker, [Frozen] IContactFacetsProvider contactProfileProvider, VisitsRepository visitsRepository) { //Arrange this.InitTracker(tracker); contactProfileProvider.Contact.Returns(x => tracker.Contact); tracker.Contact.System.VisitCount.Returns(visitCount); using (new TrackerSwitcher(tracker)) { //Act var visits = visitsRepository.Get(); //Assert visits.TotalVisits.Should().Be(visitCount); } }
public void Get_PageViews_ReturnOnly10Pages(ITracker tracker, [Frozen] IContactProfileProvider contactProfileProvider, VisitsRepository visitsRepository) { //Arrange this.InitTracker(tracker); var pages = Enumerable.Repeat(this.GeneratePage(), 15); tracker.Interaction.GetPages().Returns(pages); contactProfileProvider.Contact.Returns(x => tracker.Contact);; using (new TrackerSwitcher(tracker)) { //Act var visits = visitsRepository.Get(); //Assert visits.PageViews.Should().HaveCount(10); visits.TotalPageViews.Should().Be(15); } }
public void Get_PageViews_DoNotReturnCancelledPages(ITracker tracker, [Frozen] IContactProfileProvider contactProfileProvider, VisitsRepository visitsRepository) { //Arrange this.InitTracker(tracker); var pages = new List <ICurrentPageContext>() { this.GeneratePage(false), this.GeneratePage(true), this.GeneratePage(false) }; tracker.Interaction.GetPages().Returns(pages); contactProfileProvider.Contact.Returns(x => tracker.Contact);; using (new TrackerSwitcher(tracker)) { //Act var visits = visitsRepository.Get(); //Assert visits.PageViews.Should().HaveCount(2); visits.TotalPageViews.Should().Be(2); } }