blob: ef15076db22e793b11571418cec1f4cf8a5c7565 [file] [log] [blame]
<!doctype html><!-- webkit-test-runner [ experimental:RequestIdleCallbackEnabled=true ] -->
<meta charset=utf-8>
<title>cancelling idle requests</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id="log"></div>
<script>
test(function (t) {
window.cancelIdleCallback(42);
assert_true(true);
}, "cancelIdleCallback does nothing if there is no callback with the given handle");
async_test(function (t) {
assert_false(document.hidden, "document.hidden must exist and be false to run this test properly");
var neverCalled = true;
var handle = window.requestIdleCallback(function () {
neverCalled = false;
});
window.cancelIdleCallback(handle);
t.step_timeout(function() {
assert_true(neverCalled);
t.done();
}, 2000);
}, "A cancelled callback is never invoked");
async_test(function (t) {
var handle = requestIdleCallback(t.step_func_done(function () {
cancelIdleCallback(handle);
}));
}, "Cancelling the currently executing idle callback should be allowed");
</script>