describe('An auto event tracker', function() { "use strict"; var tracker, element; beforeEach(function() { GOVUK.analytics = {trackEvent: function() {}}; tracker = new GOVUK.Modules.AutoTrackEvent(); }); afterEach(function() { delete GOVUK.analytics; }); it('tracks non-interactive events on start', function() { spyOn(GOVUK.analytics, 'trackEvent'); element = $('\
\ Some content\
\ '); tracker.start(element); expect(GOVUK.analytics.trackEvent).toHaveBeenCalledWith( 'category', 'action', {nonInteraction: 1}); }); it('can track non-interactive events with optional label and value', function() { spyOn(GOVUK.analytics, 'trackEvent'); element = $('\
\ Some content\
\ '); tracker.start(element); expect(GOVUK.analytics.trackEvent).toHaveBeenCalledWith( 'category', 'action', {label: 'label', value: 10, nonInteraction: 1}); }); });