gecko/caps/tests/mochitest/test_bug470804.html
Bobby Holley 03e356bde0 Bug 877478 - Fix tests that depend on creating verboten instances in content. r=mrbkap
XPConnect generally throws when trying to create instances of non-DOM objects
in content. Due to some bugs this has historically worked in certain cases, but
we're fixing those now. So we need to fix the tests that do this sort of thing.
2013-06-04 19:56:42 -07:00

44 lines
1.5 KiB
HTML

<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=470804
-->
<head>
<title>Test for Bug 470804</title>
<script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=470804">Mozilla Bug 470804</a>
<p id="display"></p>
<div id="content" style="display: none">
</div>
<pre id="test">
<script type="application/javascript">
/** Test for Bug 470804
Passing a null targetURL to checkLoadURIWithPrincipal shouldn't crash
**/
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
const nsIScriptSecurityManager = Components.interfaces.nsIScriptSecurityManager;
var secMan = SpecialPowers.Cc["@mozilla.org/scriptsecuritymanager;1"]
.getService(nsIScriptSecurityManager);
var principal = SpecialPowers.wrap(document).nodePrincipal;
isnot(principal, undefined, "Should have a principal");
isnot(principal, null, "Should have a non-null principal");
is(secMan.isSystemPrincipal(principal), false,
"Shouldn't have system principal here");
try {
secMan.checkLoadURIWithPrincipal(principal, null,
nsIScriptSecurityManager.STANDARD);
} catch (e) {
// throwing is fine, it's just crashing that's bad
}
ok(true, "Survival", "We should get here without crashing");
</script>
</pre>
</body>
</html>