46 lines
1.3 KiB
HTML
46 lines
1.3 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
function busyWait(millis) {
|
|
let start = performance.now();
|
|
while (performance.now() - start < millis) { }
|
|
}
|
|
|
|
function firstRequestAnimationFrame() {
|
|
return new Promise(resolve => {
|
|
window.requestAnimationFrame(timestamp => {
|
|
debug("In firstRequestAnimationFrame()");
|
|
busyWait(10);
|
|
resolve(timestamp);
|
|
});
|
|
});
|
|
}
|
|
|
|
function secondRequestAnimationFrame() {
|
|
return new Promise(resolve => {
|
|
window.requestAnimationFrame(timestamp => {
|
|
debug("In secondRequestAnimationFrame()");
|
|
resolve(timestamp);
|
|
});
|
|
});
|
|
}
|
|
|
|
description("Tests the timestamps provided to requestAnimationFrame callbacks");
|
|
window.jsTestIsAsync = true;
|
|
|
|
(async () => {
|
|
let timestamps = await Promise.all([firstRequestAnimationFrame(), secondRequestAnimationFrame()]);
|
|
firstTimestamp = timestamps[0];
|
|
secondTimestamp = timestamps[1];
|
|
shouldBe("firstTimestamp", "secondTimestamp");
|
|
finishJSTest();
|
|
})();
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|