gecko-dev/docshell/test/browser/browser_dataURI_unique_opaq...

36 строки
1.1 KiB
JavaScript

add_task(async function setup() {
Services.prefs.setBoolPref("security.data_uri.unique_opaque_origin", true);
registerCleanupFunction(function() {
Services.prefs.clearUserPref("security.data_uri.unique_opaque_origin");
});
});
add_task(async function test_dataURI_unique_opaque_origin() {
let tab = BrowserTestUtils.addTab(gBrowser, "http://example.com");
let browser = tab.linkedBrowser;
await BrowserTestUtils.browserLoaded(browser);
let pagePrincipal = browser.contentPrincipal;
info("pagePrincial " + pagePrincipal.origin);
BrowserTestUtils.loadURI(browser, "data:text/html,hi");
await BrowserTestUtils.browserLoaded(browser);
await ContentTask.spawn(browser, { principal: pagePrincipal }, async function(
args
) {
info("data URI principal: " + content.document.nodePrincipal.origin);
Assert.ok(
content.document.nodePrincipal.isNullPrincipal,
"data: URI should have NullPrincipal."
);
Assert.ok(
!content.document.nodePrincipal.equals(args.principal),
"data: URI should have unique opaque origin."
);
});
gBrowser.removeTab(tab);
});