diff options
Diffstat (limited to 'toolkit/mozapps/extensions/test/xpcshell/test_bug757663.js')
-rw-r--r-- | toolkit/mozapps/extensions/test/xpcshell/test_bug757663.js | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/toolkit/mozapps/extensions/test/xpcshell/test_bug757663.js b/toolkit/mozapps/extensions/test/xpcshell/test_bug757663.js deleted file mode 100644 index 648c7acc3..000000000 --- a/toolkit/mozapps/extensions/test/xpcshell/test_bug757663.js +++ /dev/null @@ -1,112 +0,0 @@ -/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/
- */
-
-// This test verifies that removing a listener during a callback for that type
-// of listener still results in all listeners being called.
-
-var addon1 = {
- id: "addon1@tests.mozilla.org",
- version: "2.0",
- name: "Test 1",
- bootstrap: "true",
- targetApplications: [{
- id: "xpcshell@tests.mozilla.org",
- minVersion: "1",
- maxVersion: "1"
- }]
-};
-
-var listener1 = {
- sawEvent: false,
- onDisabling: function() {
- this.sawEvent = true;
- AddonManager.removeAddonListener(this);
- },
- onNewInstall: function() {
- this.sawEvent = true;
- AddonManager.removeInstallListener(this);
- }
-};
-var listener2 = {
- sawEvent: false,
- onDisabling: function() {
- this.sawEvent = true;
- },
- onNewInstall: function() {
- this.sawEvent = true;
- }
-};
-var listener3 = {
- sawEvent: false,
- onDisabling: function() {
- this.sawEvent = true;
- },
- onNewInstall: function() {
- this.sawEvent = true;
- }
-};
-
-const profileDir = gProfD.clone();
-profileDir.append("extensions");
-
-
-function run_test() {
- do_test_pending();
- createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "1.9.2");
-
- writeInstallRDFForExtension(addon1, profileDir);
- startupManager();
-
- run_test_1();
-}
-
-function run_test_1() {
- AddonManager.addAddonListener(listener1);
- AddonManager.addAddonListener(listener2);
- AddonManager.addAddonListener(listener3);
-
- AddonManager.getAddonsByIDs(["addon1@tests.mozilla.org"], function([a1]) {
- do_check_neq(a1, null);
- do_check_false(a1.userDisabled);
- do_check_true(a1.isActive);
-
- a1.userDisabled = true;
-
- do_check_true(listener1.sawEvent);
- listener1.sawEvent = false;
- do_check_true(listener2.sawEvent);
- listener2.sawEvent = false;
- do_check_true(listener3.sawEvent);
- listener3.sawEvent = false;
-
- AddonManager.removeAddonListener(listener1);
- AddonManager.removeAddonListener(listener2);
- AddonManager.removeAddonListener(listener3);
-
- a1.uninstall();
- run_test_2();
- });
-}
-
-function run_test_2() {
- AddonManager.addInstallListener(listener1);
- AddonManager.addInstallListener(listener2);
- AddonManager.addInstallListener(listener3);
-
- AddonManager.getInstallForFile(do_get_addon("test_bug757663"), function(aInstall) {
-
- do_check_true(listener1.sawEvent);
- listener1.sawEvent = false;
- do_check_true(listener2.sawEvent);
- listener2.sawEvent = false;
- do_check_true(listener3.sawEvent);
- listener3.sawEvent = false;
-
- AddonManager.removeInstallListener(listener1);
- AddonManager.removeInstallListener(listener2);
- AddonManager.removeInstallListener(listener3);
-
- do_execute_soon(do_test_finished);
- });
-}
|