예제 #1
0
        public void OnActionExecuting_TrackerNotInitialized_ShouldDoNothing(SkipAnalyticsTrackingAttribute trackingAttribute, ActionExecutingContext ctx, ITracker tracker)
        {
            //arrange
            InitializeActionFilterContext(ctx);

            using (new TrackerSwitcher(tracker))
            {
                //act
                trackingAttribute.OnActionExecuting(ctx);
                //assert
                tracker.CurrentPage.DidNotReceive().Cancel();
            }
        }
예제 #2
0
        public void OnActionExecuting_OnAjaxRequest_ShouldCallCancelAnalytics(SkipAnalyticsTrackingAttribute trackingAttribute, ActionExecutingContext ctx, ITracker tracker)
        {
            //arrange
            InitializeActionFilterContext(ctx);
            tracker.IsActive.Returns(true);

            using (new TrackerSwitcher(tracker))
            {
                //act
                trackingAttribute.OnActionExecuting(ctx);
                //assert
                tracker.CurrentPage.Received(1).Cancel();
            }
        }
예제 #3
0
        public void OnActionExecuting_CurrentPageIsNull_ShouldNotRaiseException(SkipAnalyticsTrackingAttribute trackingAttribute, ActionExecutingContext ctx, ITracker tracker)
        {
            //arrange
            InitializeActionFilterContext(ctx);
            tracker.IsActive.Returns(true);
            tracker.CurrentPage.Returns((ICurrentPageContext)null);


            using (new TrackerSwitcher(tracker))
            {
                //act
                Action action = () => trackingAttribute.OnActionExecuting(ctx);
                //assert
                action.Should().NotThrow();
            }
        }