Revision 92c857093784ffe21babd2d64564a9cba491c8b7 authored by Yuki Shiino on 26 December 2018, 13:48:42 UTC, committed by Chromium WPT Sync on 26 December 2018, 13:48:42 UTC
This is mostly a reland of Iee5c1d6917ad7770383e06a425f96000835a663a. This patch implements setTimeout/setInterval Web APIs with IDL callback function of type Function (i.e. V8Function in Blink). Also ensure eager finalization of ScheduledAction in DOMTimer to prevent a memory leak. Bug: 866610 Change-Id: I3f460247f27069e4054a984efd3f98a2ce0ceac7
1 parent cd31531
storage.https.html
<!DOCTYPE html>
<html>
<head>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="support/test_utils.sub.js"></script>
</head>
<body>
<script>
/** @property{Datatype} The storage datatype. */
var storage = TestUtils.DATATYPES.filter(function(datatype) {
return datatype.name == "storage";
})[0];
// The tests are set up asynchronously.
setup({"explicit_done": true});
// There must be at least one test added synchronously, otherwise
// testharness will complain.
// TODO(@msramek): Find a way to avoid this dummy test.
test(function() {}, "Populate backends.");
TestUtils.populateStorage()
.then(function() {
// Navigate to a resource with a Clear-Site-Data header in
// an iframe, then verify that all backends of the "storage"
// datatype have been deleted.
return new Promise(function(resolve, reject) {
window.addEventListener("message", resolve);
var iframe = document.createElement("iframe");
iframe.src = TestUtils.getClearSiteDataUrl([storage]);
document.body.appendChild(iframe);
}).then(function() {
TestUtils.STORAGE.forEach(function(backend) {
var test_name =
"Clear backend when 'storage' is deleted: " + backend.name;
promise_test(function() {
return backend.isEmpty().then(function(isEmpty) {
assert_true(
isEmpty,
backend.name + " should have been cleared.");
});
}, test_name);
});
done();
});
});
</script>
</body>
</html>
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...