blob: a40c412029b4b28ae26691deff0286dfff3ccbcd [file] [log] [blame]
// META: script=resources/wait-for-messages.js
function testNavigation(url) {
return async (t) => {
// Start waiting for messages before inserting the child frame, to avoid any
// race conditions.
const messagesPromise = waitForMessages(3);
const iframe = document.createElement("iframe");
iframe.src = url;
document.body.appendChild(iframe);
const messages = await messagesPromise;
assert_array_equals(messages, ["initial", "inner", "destination"]);
}
}
promise_test(
testNavigation("resources/child-navigates-parent-location-initial.html"),
"Child document navigates same-origin parent via document.location");
promise_test(
testNavigation("resources/child-navigates-parent-submit-initial.html"),
"Child document navigates same-origin parent via form submission");