36 lines
1.1 KiB
HTML
36 lines
1.1 KiB
HTML
<!DOCTYPE HTML>
|
|
<meta charset=utf-8>
|
|
<title>Long Animation Frame Timing: requestIdleCallback</title>
|
|
<meta name="timeout" content="long">
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="resources/utils.js"></script>
|
|
|
|
<body>
|
|
<h1>Long Animation Frame: requestIdleCallback</h1>
|
|
<div id="log"></div>
|
|
<script>
|
|
setup(() =>
|
|
assert_implements(window.requestIdleCallback,
|
|
'requestIdleCallback is not supported.'));
|
|
|
|
/*
|
|
promise_test(async t => {
|
|
await expect_no_long_frame(() => requestIdleCallback(busy_wait), t);
|
|
}, 'A long busy wait in an idle callback is not a long animation frame');
|
|
*/
|
|
|
|
promise_test(async t => {
|
|
const segment_duration = very_long_frame_duration / 2;
|
|
requestIdleCallback(() => {
|
|
busy_wait(segment_duration);
|
|
requestAnimationFrame(() => {
|
|
busy_wait(segment_duration);
|
|
});
|
|
});
|
|
await expect_long_frame(() => {}, t);
|
|
}, 'A long busy wait split between an idle callback and a ' +
|
|
'requestAnimationFrame is a long animation frame');
|
|
|
|
</script>
|
|
</body>
|