Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

// META: title='unload' Policy : allowed by default
// META: script=/common/dispatcher/dispatcher.js
// META: script=/common/get-host-info.sub.js
// META: script=/common/utils.js
// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js
// META: script=./resources/unload-helper.js
// META: timeout=long
'use strict';
// Check that unload is allowed by policy in main frame and subframe by default.
promise_test(async t => {
const rcHelper =
new RemoteContextHelper({scripts: ['./resources/unload-helper.js']});
// In the same browsing context group to ensure BFCache is not used.
const main = await rcHelper.addWindow();
const sameOriginSubframe = await main.addIframe();
const crossOriginSubframe = await main.addIframe({ origin: 'HTTP_REMOTE_ORIGIN' });
await assertWindowRunsUnload(sameOriginSubframe, 'sameOriginSubframe', { shouldRunUnload: true });
await assertWindowRunsUnload(crossOriginSubframe, 'crossOriginSubframe', { shouldRunUnload: true });
await assertWindowRunsUnload(main, 'main', {shouldRunUnload: true});
});