Update web-platform-tests to revision e8bfc205e36ad699601212cd50083870bad9a75d

This commit is contained in:
Ms2ger 2016-11-14 11:07:09 +01:00
parent 65dd6d4340
commit ccdb0a3458
1428 changed files with 118036 additions and 9786 deletions

View file

@ -0,0 +1,22 @@
<!doctype html>
<meta charset=utf-8>
<title>requestIdleCallback callback exception reported to error handler</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id="log"></div>
<script>
var custom_exception = 'requestIdleCallbackException';
setup({allow_uncaught_exception : true});
async_test(function (t) {
assert_false(document.hidden, "document.hidden must exist and be false to run this test properly");
addEventListener("error",function(e) {
t.step(function() {
assert_equals(e.error.message, custom_exception);
t.done();
})
});
window.requestIdleCallback(function () {
throw new Error(custom_exception);
});
}, "requestIdleCallback callback exceptions are reported to error handler");
</script>

View file

@ -0,0 +1,17 @@
<!doctype html>
<meta charset=utf-8>
<title></title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id="log"></div>
<iframe style="display:none" id="frame"></iframe>
<script>
async_test(function (t) {
let frame = document.getElementById("frame");
frame.contentWindow.test = function() {
frame.contentWindow.requestIdleCallback(t.step_func_done());
}
frame.contentWindow.test();
});
</script>

View file

@ -0,0 +1,12 @@
<!doctype html>
<meta charset=utf-8>
<title>requestIdleCallback callback must be called eventually</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id="log"></div>
<script>
async_test(function (t) {
assert_false(document.hidden, "document.hidden must exist and be false to run this test properly");
window.requestIdleCallback(t.step_func_done());
}, "requestIdleCallback callback is invoked at least once before the timeout");
</script>

View file

@ -0,0 +1,41 @@
<!doctype html>
<meta charset=utf-8>
<title>multiple calls to requestIdleCallback</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id="log"></div>
<script>
async_test(function (t) {
assert_false(document.hidden, "document.hidden must exist and be false to run this test properly");
var counter = 0;
function f(c) {
assert_equals(counter, c);
if (counter === 99) {
t.done();
}
++counter;
}
for (var i = 0; i < 100; ++i) {
let j = i;
window.requestIdleCallback(t.step_func(function () { f(j) }));
}
}, "requestIdleCallback callbacks should be invoked in order (called iteratively)");
async_test(function (t) {
assert_false(document.hidden, "document.hidden must exist and be false to run this test properly");
var counter = 0;
function f(c) {
assert_equals(counter, c);
if (counter === 99) {
t.done();
}
++counter;
window.requestIdleCallback(t.step_func(function () { f(c + 1) }));
}
window.requestIdleCallback(t.step_func(function () { f(0) }));
}, "requestIdleCallback callbacks should be invoked in order (called recursively)");
</script>

View file

@ -0,0 +1,28 @@
<!doctype html>
<meta charset=utf-8>
<title>requestIdleCallback timeout callback must be called with didTimeout equal to true</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id="log"></div>
<script>
async_test(function (t) {
assert_false(document.hidden, "document.hidden must exist and be false to run this test properly");
var counter = 0;
function g(deadline) {
assert_true(deadline.didTimeout)
t.done();
}
function f(deadline) {
assert_false(deadline.didTimeout);
window.requestIdleCallback(t.step_func(g), {timeout:300});
var d = Date.now() + 500;
while (Date.now() < d) {
}
}
window.requestIdleCallback(t.step_func(f));
}, "requestIdleCallback callback should time out");
</script>

View file

@ -0,0 +1,26 @@
<!doctype html>
<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");
</script>

View file

@ -0,0 +1,34 @@
<!doctype html>
<meta charset=utf-8>
<title>idlharness test</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src="/resources/WebIDLParser.js"></script>
<script src="/resources/idlharness.js"></script>
<pre id='untested_idl' style='display:none'>
[PrimaryGlobal]
interface Window {
};
</pre>
<pre id='idl'>
partial interface Window {
unsigned long requestIdleCallback(IdleRequestCallback callback,
optional IdleRequestOptions options);
void cancelIdleCallback(unsigned long handle);
};
dictionary IdleRequestOptions {
unsigned long timeout;
};
callback IdleRequestCallback = void (IdleDeadline deadline);
</pre>
<script>
var idl_array = new IdlArray();
idl_array.add_untested_idls(document.getElementById("untested_idl").textContent);
idl_array.add_idls(document.getElementById("idl").textContent);
idl_array.add_objects({Window: ["window"]});
idl_array.test();
</script>