@aller/blink
Version:
A library for tracking user behaviour.
55 lines (49 loc) • 1.49 kB
text/typescript
import preparePerformanceEvent from '../prepare-performance-event';
import { Page } from '../../selectors/get-page-state';
import { VERSION } from '../../config/config';
import { BlinkEvent } from '../../types';
import { PerformanceTimings } from '../../main';
describe('preparePerformanceEvent', () => {
it('should format properly based on state', () => {
const page: Page = {
id: 'default',
state: {
general: {
pageView: 'performance-event-pageview',
url: 'https://www.lommelegen.no/a/1234',
site: 'www.lommelegen.no',
referrer: 'www.dagbladet.no',
},
},
};
const performanceTimings: PerformanceTimings = {
domContentLoadedEventEnd: 1,
domContentLoadedEventStart: 2,
domInteractive: 3,
loadEventEnd: 4,
loadEventStart: 5,
responseEnd: 6,
responseStart: 7,
};
const expected: BlinkEvent = {
id: 'lommelegen.no/1234',
type: 'performance',
performanceTimings: {
domContentLoadedEventEnd: 1,
domContentLoadedEventStart: 2,
domInteractive: 3,
loadEventEnd: 4,
loadEventStart: 5,
responseEnd: 6,
responseStart: 7,
},
pageView: 'performance-event-pageview',
site: 'www.lommelegen.no',
referrer: 'www.dagbladet.no',
version: VERSION,
};
expect(preparePerformanceEvent({ page, performanceTimings })).toEqual(
expected,
);
});
});