diff options
Diffstat (limited to 'extensions/permissions/test/browser_permmgr_viewsrc.js')
-rw-r--r-- | extensions/permissions/test/browser_permmgr_viewsrc.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/extensions/permissions/test/browser_permmgr_viewsrc.js b/extensions/permissions/test/browser_permmgr_viewsrc.js new file mode 100644 index 0000000000..d689994d10 --- /dev/null +++ b/extensions/permissions/test/browser_permmgr_viewsrc.js @@ -0,0 +1,27 @@ +add_task(async function() { + // Add a permission for example.com, start a new content process, and make + // sure that the permission has been sent down. + let principal = Services.scriptSecurityManager.createContentPrincipalFromOrigin( + "http://example.com" + ); + Services.perms.addFromPrincipal( + principal, + "viewsourceTestingPerm", + Services.perms.ALLOW_ACTION + ); + + let tab = await BrowserTestUtils.openNewForegroundTab( + gBrowser, + "view-source:http://example.com", + /* waitForLoad */ true, + /* waitForStateStop */ false, + /* forceNewProcess */ true + ); + await SpecialPowers.spawn(tab.linkedBrowser, [principal], async function(p) { + is( + Services.perms.testPermissionFromPrincipal(p, "viewsourceTestingPerm"), + Services.perms.ALLOW_ACTION + ); + }); + BrowserTestUtils.removeTab(tab); +}); |