<!DOCTYPE html>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<style>
#frame {
position: absolute;
top: -1000px;
}
</style>
<iframe id="frame" sandbox="allow-scripts" src="resources/timer-throttling-frame.html"></iframe>
<script>
if (window.testRunner)
testRunner.dumpAsText();
let throttlingTest = async_test("Test timer throttling in out-of-view cross origin frames");
var frame = document.querySelector('#frame');
frame.addEventListener('load', () => {
// Throttling only happens after the first layout, so start the test after
// that.
requestAnimationFrame(() => {
frame.contentWindow.postMessage(null, '*');
});
});
addEventListener('message', (e) => {
let timerDelay = e.data;
throttlingTest.step(() => {
assert_greater_than(timerDelay, 900, "Timer interval")
});
throttlingTest.done();
});
</script>