40 lines
1006 B
HTML
40 lines
1006 B
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<body>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
description("Tests that DOM timers are throttled in low power mode.");
|
|
jsTestIsAsync = true;
|
|
|
|
let i = 0;
|
|
const maxNestingLevel = 5;
|
|
|
|
let lowPowerModeEnabled = true;
|
|
debug("Enabling low power mode");
|
|
evalAndLog("internals.setLowPowerModeEnabled(true)");
|
|
|
|
const timerHandle = setInterval(function() {
|
|
i++;
|
|
debug("* Nesting: " + i);
|
|
if (i >= maxNestingLevel && lowPowerModeEnabled)
|
|
shouldBeTrue("internals.isTimerThrottled(timerHandle)");
|
|
else
|
|
shouldBeFalse("internals.isTimerThrottled(timerHandle)");
|
|
|
|
if (i == maxNestingLevel + 1) {
|
|
debug("");
|
|
debug("Disabling low power mode");
|
|
lowPowerModeEnabled = false;
|
|
evalAndLog("internals.setLowPowerModeEnabled(false)");
|
|
}
|
|
|
|
if (i == 10) {
|
|
clearInterval(timerHandle);
|
|
finishJSTest();
|
|
}
|
|
}, 10);
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|