@aller/blink
Version:
A library for tracking user behaviour.
59 lines (56 loc) • 1.71 kB
text/typescript
import preparePageloadEvent from '../prepare-pageload-event';
import { VERSION } from '../../config/config';
import { BlinkEvent } from '../../types';
import { Page } from '../../selectors/get-page-state';
describe('preparePageloadEvent', () => {
it('should format properly based on state', () => {
const url = 'https://www.dagbladet.no/a/123';
const page: Page = {
id: 'default',
state: {
general: {
abCookie: 14,
commercialSegments: 'sport,soccer,gardening',
pageType: 'fb instant article',
pageView: 'some-pageview-uuid',
previousPageView: 'prev-pageview-uuid',
site: 'www.dagbladet.no',
referrer: 'www.dinside.no',
clientHeight: 3333,
clientWidth: 4444,
scrollHeight: 5555,
plussData: {
hasAccess: true,
customerNumber: '15664915',
},
},
},
};
const expected: BlinkEvent = {
id: 'dagbladet.no/123',
type: 'pageLoad',
abCookie: 14,
commercialSegments: 'sport,soccer,gardening',
article: {
harvesterId: 'dagbladet.no/123',
url: 'https://www.dagbladet.no/a/123',
},
pageType: 'fb instant article',
pageView: 'some-pageview-uuid',
previousPageView: 'prev-pageview-uuid',
site: 'www.dagbladet.no',
referrer: 'www.dinside.no',
version: VERSION,
plussData: {
hasAccess: true,
customerNumber: '15664915',
},
clientHeight: 3333,
clientWidth: 4444,
scroll: {
scrollHeight: 5555,
},
};
expect(preparePageloadEvent({ page, url })).toEqual(expected);
});
});