mirror of
https://github.com/hanzoai/sentinel.git
synced 2026-09-29 22:34:33 +00:00
54 lines
1.4 KiB
TypeScript
54 lines
1.4 KiB
TypeScript
import {UIFrames} from './uiFrames';
|
|
|
|
describe('UIFrames', () => {
|
|
it('handles different render units', () => {
|
|
const slowFrameRenders = {
|
|
unit: 'nanoseconds',
|
|
values: [{elapsed_since_start_ns: 0, value: 1 * 1e6}],
|
|
};
|
|
const frozenFrameRenders = {
|
|
unit: 'milliseconds',
|
|
values: [{elapsed_since_start_ns: 0, value: 1}],
|
|
};
|
|
|
|
const tree = new UIFrames(
|
|
{slow: slowFrameRenders, frozen: frozenFrameRenders},
|
|
{
|
|
unit: 'milliseconds',
|
|
}
|
|
);
|
|
|
|
expect(tree.frames[0].duration).toBe(tree.frames[1].duration);
|
|
});
|
|
|
|
it.each([
|
|
[
|
|
{unit: 'nanoseconds', values: []},
|
|
{unit: 'nanoseconds', values: [{elapsed_since_start_ns: 0, value: 1}]},
|
|
],
|
|
[
|
|
{unit: 'nanoseconds', values: [{elapsed_since_start_ns: 0, value: 1}]},
|
|
{unit: 'nanoseconds', values: []},
|
|
],
|
|
[undefined, {unit: 'nanoseconds', values: [{elapsed_since_start_ns: 0, value: 1}]}],
|
|
[{unit: 'nanoseconds', values: [{elapsed_since_start_ns: 0, value: 1}]}, undefined],
|
|
[undefined, undefined],
|
|
])(
|
|
`does not throw`,
|
|
(
|
|
slow: ConstructorParameters<typeof UIFrames>[0]['slow'],
|
|
frozen: ConstructorParameters<typeof UIFrames>[0]['frozen']
|
|
) => {
|
|
expect(
|
|
() =>
|
|
new UIFrames(
|
|
{slow, frozen},
|
|
{
|
|
unit: 'milliseconds',
|
|
}
|
|
)
|
|
).not.toThrow();
|
|
}
|
|
);
|
|
});
|