diff options
Diffstat (limited to 'browser/components/resistfingerprinting/test/browser/browser_block_mozAddonManager.js')
-rw-r--r-- | browser/components/resistfingerprinting/test/browser/browser_block_mozAddonManager.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/browser/components/resistfingerprinting/test/browser/browser_block_mozAddonManager.js b/browser/components/resistfingerprinting/test/browser/browser_block_mozAddonManager.js new file mode 100644 index 0000000000..e9f55ef667 --- /dev/null +++ b/browser/components/resistfingerprinting/test/browser/browser_block_mozAddonManager.js @@ -0,0 +1,43 @@ +/** + * Bug 1384330 - A test case for making sure the navigator.mozAddonManager will + * be blocked when pref 'privacy.resistFingerprinting.block_mozAddonManager' is true. + */ + +const HTTPS_TEST_PATH = + "https://example.com/browser/browser/" + + "components/resistfingerprinting/test/browser/"; + +add_task(async function test() { + await SpecialPowers.pushPrefEnv({ + set: [["extensions.webapi.testing", true]], + }); + + for (let pref of [false, true]) { + await SpecialPowers.pushPrefEnv({ + set: [["privacy.resistFingerprinting.block_mozAddonManager", pref]], + }); + + let tab = await BrowserTestUtils.openNewForegroundTab( + gBrowser, + HTTPS_TEST_PATH + "file_dummy.html" + ); + + await SpecialPowers.spawn(tab.linkedBrowser, [pref], function (aPref) { + if (aPref) { + is( + content.navigator.mozAddonManager, + undefined, + "The navigator.mozAddonManager should not exist when the pref is on." + ); + } else { + ok( + content.navigator.mozAddonManager, + "The navigator.mozAddonManager should exist when the pref is off." + ); + } + }); + + BrowserTestUtils.removeTab(tab); + await SpecialPowers.popPrefEnv(); + } +}); |