| <!doctype html> | |
| <meta charset="utf-8"> | |
| <meta name="timeout" content="long"> | |
| <title>IdleDeadline::timeRemaining() uses relevant global object as a high-res timestamp origin</title> | |
| <link rel="help" href="https://w3c.github.io/requestidlecallback/#dom-idledeadline-timeremaining"> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <body> | |
| <script> | |
| const t = async_test(); | |
| t.step_timeout(() => { | |
| const iframeDelayed = document.createElement("iframe"); | |
| iframeDelayed.onload = t.step_func(() => { | |
| requestIdleCallback(t.step_func_done(deadline => { | |
| assert_approx_equals( | |
| iframeDelayed.contentWindow.IdleDeadline.prototype.timeRemaining.call(deadline), | |
| deadline.timeRemaining(), | |
| 5, | |
| ); | |
| })); | |
| }); | |
| document.body.append(iframeDelayed); | |
| }, 1000); | |
| </script> |