mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
Update web-platform-tests to revision e8bfc205e36ad699601212cd50083870bad9a75d
This commit is contained in:
parent
65dd6d4340
commit
ccdb0a3458
1428 changed files with 118036 additions and 9786 deletions
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
Loading…
Add table
Add a link
Reference in a new issue