mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
Update web-platform-tests to revision 2dda7b8c10c7566fa6167a32b09c85d51baf2a85
This commit is contained in:
parent
25ebde78aa
commit
8edc7686ef
129 changed files with 5280 additions and 820 deletions
|
@ -1,15 +1,60 @@
|
|||
for (const ev of ["unload", "beforeunload", "pagehide"]) {
|
||||
for (const [ev, target] of [
|
||||
["beforeunload", iframe => iframe.contentWindow],
|
||||
["pagehide", iframe => iframe.contentWindow],
|
||||
["unload", iframe => iframe.contentWindow],
|
||||
["visibilitychange", iframe => iframe.contentDocument],
|
||||
]) {
|
||||
async_test(t => {
|
||||
const iframe = document.body.appendChild(document.createElement("iframe"));
|
||||
t.add_cleanup(() => iframe.remove());
|
||||
iframe.src = "/common/blank.html";
|
||||
iframe.onload = t.step_func(() => {
|
||||
iframe.contentWindow.addEventListener(ev, t.step_func_done(() => {
|
||||
target(iframe).addEventListener(ev, t.step_func_done(() => {
|
||||
assert_not_equals(iframe.contentDocument.childNodes.length, 0);
|
||||
assert_equals(iframe.contentDocument.open(), iframe.contentDocument);
|
||||
assert_not_equals(iframe.contentDocument.childNodes.length, 0);
|
||||
}));
|
||||
iframe.src = "about:blank";
|
||||
});
|
||||
}, `document.open should bail out when ignore-opens-during-unload is greater than 0 during ${ev} event`);
|
||||
}, `document.open should bail out when ignore-opens-during-unload is greater than 0 during ${ev} event (in top-level browsing context)`);
|
||||
|
||||
async_test(t => {
|
||||
const iframe = document.body.appendChild(document.createElement("iframe"));
|
||||
t.add_cleanup(() => iframe.remove());
|
||||
iframe.src = "/common/blank.html?1";
|
||||
iframe.onload = t.step_func(() => {
|
||||
const doc = iframe.contentDocument;
|
||||
const innerIframe = doc.body.appendChild(doc.createElement("iframe"));
|
||||
innerIframe.src = "/common/blank.html?2";
|
||||
innerIframe.onload = t.step_func(() => {
|
||||
// Navigate the parent, listen on the child, and open() the parent.
|
||||
target(innerIframe).addEventListener(ev, t.step_func_done(() => {
|
||||
assert_not_equals(iframe.contentDocument.childNodes.length, 0);
|
||||
iframe.contentDocument.open();
|
||||
assert_not_equals(iframe.contentDocument.childNodes.length, 0);
|
||||
}));
|
||||
iframe.src = "about:blank";
|
||||
});
|
||||
});
|
||||
}, `document.open should bail out when ignore-opens-during-unload is greater than 0 during ${ev} event (open(parent) while unloading parent and child)`);
|
||||
|
||||
async_test(t => {
|
||||
const iframe = document.body.appendChild(document.createElement("iframe"));
|
||||
t.add_cleanup(() => iframe.remove());
|
||||
iframe.src = "/common/blank.html?1";
|
||||
iframe.onload = t.step_func(() => {
|
||||
const doc = iframe.contentDocument;
|
||||
const innerIframe = doc.body.appendChild(doc.createElement("iframe"));
|
||||
innerIframe.src = "/common/blank.html?2";
|
||||
innerIframe.onload = t.step_func(() => {
|
||||
// Navigate the child, listen on the child, and open() the parent.
|
||||
target(innerIframe).addEventListener(ev, t.step_func_done(() => {
|
||||
assert_not_equals(iframe.contentDocument.childNodes.length, 0);
|
||||
iframe.contentDocument.open();
|
||||
assert_equals(iframe.contentDocument.childNodes.length, 0);
|
||||
}));
|
||||
innerIframe.src = "about:blank";
|
||||
});
|
||||
});
|
||||
}, `document.open should bail out when ignore-opens-during-unload is greater than 0 during ${ev} event (open(parent) while unloading child only)`);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue