gecko-dev/docshell/test/browser/browser_bug349769.js
sakshaat d781937a67 Bug 1517483 - Get rid of nsIScriptSecurityManager::IsSystemPrincipal r=bzbarsky
Replaced instances of callers in both C++ and JS files to query the state from the principal directly.

Differential Revision: https://phabricator.services.mozilla.com/D22532

--HG--
extra : moz-landing-system : lando
2019-03-24 20:36:25 +00:00

45 lines
1.8 KiB
JavaScript

add_task(async function test() {
const uris = [undefined, "about:blank"];
function checkContentProcess(newBrowser, uri) {
return ContentTask.spawn(newBrowser, uri, async function(uri) {
var prin = content.document.nodePrincipal;
Assert.notEqual(prin, null, "Loaded principal must not be null when adding " + uri);
Assert.notEqual(prin, undefined, "Loaded principal must not be undefined when loading " + uri);
Assert.equal(prin.isSystemPrincipal, false,
"Loaded principal must not be system when loading " + uri);
});
}
for (var uri of uris) {
await BrowserTestUtils.withNewTab({ gBrowser }, async function(newBrowser) {
let loadedPromise = BrowserTestUtils.browserLoaded(newBrowser);
await BrowserTestUtils.loadURI(newBrowser, uri);
var prin = newBrowser.contentPrincipal;
isnot(prin, null, "Forced principal must not be null when loading " + uri);
isnot(prin, undefined,
"Forced principal must not be undefined when loading " + uri);
is(prin.isSystemPrincipal, false,
"Forced principal must not be system when loading " + uri);
// Belt-and-suspenders e10s check: make sure that the same checks hold
// true in the content process.
await checkContentProcess(newBrowser, uri);
await loadedPromise;
prin = newBrowser.contentPrincipal;
isnot(prin, null, "Loaded principal must not be null when adding " + uri);
isnot(prin, undefined, "Loaded principal must not be undefined when loading " + uri);
is(prin.isSystemPrincipal, false,
"Loaded principal must not be system when loading " + uri);
// Belt-and-suspenders e10s check: make sure that the same checks hold
// true in the content process.
await checkContentProcess(newBrowser, uri);
});
}
});