diff options
Diffstat (limited to 'toolkit/mozapps/webextensions/test/xpcshell/test_bug595081.js')
-rw-r--r-- | toolkit/mozapps/webextensions/test/xpcshell/test_bug595081.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/toolkit/mozapps/webextensions/test/xpcshell/test_bug595081.js b/toolkit/mozapps/webextensions/test/xpcshell/test_bug595081.js new file mode 100644 index 000000000..db53dc747 --- /dev/null +++ b/toolkit/mozapps/webextensions/test/xpcshell/test_bug595081.js @@ -0,0 +1,27 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ + */ + +// Tests that the AddonManager objects cannot be tampered with + +function run_test() { + // Setup for test + createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "1.9.2"); + + startupManager(); + + // Verify that properties cannot be changed + let old = AddonManager.STATE_AVAILABLE; + AddonManager.STATE_AVAILABLE = 28; + do_check_eq(AddonManager.STATE_AVAILABLE, old); + + // Verify that functions cannot be replaced + AddonManager.isInstallEnabled = function() { + do_throw("Should not be able to replace a function"); + } + AddonManager.isInstallEnabled("application/x-xpinstall"); + + // Verify that properties cannot be added + AddonManager.foo = "bar"; + do_check_false("foo" in AddonManager); +} |