@zendesk/react-measure-timing-hooks
Version:
react hooks for measuring time to interactive and time to render of components
25 lines (21 loc) • 711 B
text/typescript
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
/* eslint-disable import/no-extraneous-dependencies */
import { expect } from 'vitest'
import { generateAsciiTimeline } from './generateAsciiTimeline'
const asciiTimelineSerializer = {
test: (val: unknown) =>
Array.isArray(val) &&
val.every(
(item) =>
item &&
typeof item.startTime === 'number' &&
typeof item.duration === 'number',
),
print: (val: unknown) =>
generateAsciiTimeline(val as PerformanceEntry[], {
width: 80,
}),
} as const
expect.addSnapshotSerializer(asciiTimelineSerializer)
// eslint-disable-next-line import/no-default-export
export default asciiTimelineSerializer