diff options
Diffstat (limited to 'toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js')
-rw-r--r-- | toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js | 58 |
1 files changed, 28 insertions, 30 deletions
diff --git a/toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js b/toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js index 4d1848ea4..bad560306 100644 --- a/toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js +++ b/toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js @@ -2,9 +2,7 @@ * http://creativecommons.org/publicdomain/zero/1.0/ */ -Components.utils.import("resource://testing-common/MockRegistrar.jsm"); - -var Ci = Components.interfaces; +const Ci = Components.interfaces; // This verifies that duplicate plugins are coalesced and maintain their ID // across restarts. @@ -15,9 +13,7 @@ var PLUGINS = [{ version: "1", blocklisted: false, enabledState: Ci.nsIPluginTag.STATE_ENABLED, - get disabled() { - return this.enabledState == Ci.nsIPluginTag.STATE_DISABLED; - }, + get disabled() this.enabledState == Ci.nsIPluginTag.STATE_DISABLED, filename: "/home/mozilla/.plugins/dupplugin1.so" }, { name: "Duplicate Plugin 1", @@ -25,9 +21,8 @@ var PLUGINS = [{ version: "1", blocklisted: false, enabledState: Ci.nsIPluginTag.STATE_ENABLED, - get disabled() { - return this.enabledState == Ci.nsIPluginTag.STATE_DISABLED; - }, + get disabled() this.enabledState == Ci.nsIPluginTag.STATE_DISABLED, + filename: "", filename: "/usr/lib/plugins/dupplugin1.so" }, { name: "Duplicate Plugin 2", @@ -35,9 +30,7 @@ var PLUGINS = [{ version: "1", blocklisted: false, enabledState: Ci.nsIPluginTag.STATE_ENABLED, - get disabled() { - return this.enabledState == Ci.nsIPluginTag.STATE_DISABLED; - }, + get disabled() this.enabledState == Ci.nsIPluginTag.STATE_DISABLED, filename: "/home/mozilla/.plugins/dupplugin2.so" }, { name: "Duplicate Plugin 2", @@ -45,9 +38,8 @@ var PLUGINS = [{ version: "1", blocklisted: false, enabledState: Ci.nsIPluginTag.STATE_ENABLED, - get disabled() { - return this.enabledState == Ci.nsIPluginTag.STATE_DISABLED; - }, + get disabled() this.enabledState == Ci.nsIPluginTag.STATE_DISABLED, + filename: "", filename: "/usr/lib/plugins/dupplugin2.so" }, { name: "Non-duplicate Plugin", // 3 @@ -55,9 +47,7 @@ var PLUGINS = [{ version: "1", blocklisted: false, enabledState: Ci.nsIPluginTag.STATE_ENABLED, - get disabled() { - return this.enabledState == Ci.nsIPluginTag.STATE_DISABLED; - }, + get disabled() this.enabledState == Ci.nsIPluginTag.STATE_DISABLED, filename: "/home/mozilla/.plugins/dupplugin3.so" }, { name: "Non-duplicate Plugin", // 4 @@ -65,9 +55,8 @@ var PLUGINS = [{ version: "1", blocklisted: false, enabledState: Ci.nsIPluginTag.STATE_ENABLED, - get disabled() { - return this.enabledState == Ci.nsIPluginTag.STATE_DISABLED; - }, + get disabled() this.enabledState == Ci.nsIPluginTag.STATE_DISABLED, + filename: "", filename: "/usr/lib/plugins/dupplugin4.so" }, { name: "Another Non-duplicate Plugin", // 5 @@ -75,9 +64,7 @@ var PLUGINS = [{ version: "1", blocklisted: false, enabledState: Ci.nsIPluginTag.STATE_ENABLED, - get disabled() { - return this.enabledState == Ci.nsIPluginTag.STATE_DISABLED; - }, + get disabled() this.enabledState == Ci.nsIPluginTag.STATE_DISABLED, filename: "/home/mozilla/.plugins/dupplugin5.so" }]; @@ -92,12 +79,23 @@ var PluginHost = { if (iid.equals(Components.interfaces.nsIPluginHost) || iid.equals(Components.interfaces.nsISupports)) return this; - + throw Components.results.NS_ERROR_NO_INTERFACE; } } -MockRegistrar.register("@mozilla.org/plugin/host;1", PluginHost); +var PluginHostFactory = { + createInstance: function (outer, iid) { + if (outer != null) + throw Components.results.NS_ERROR_NO_AGGREGATION; + return PluginHost.QueryInterface(iid); + } +}; + +var registrar = Components.manager.QueryInterface(Components.interfaces.nsIComponentRegistrar); +registrar.registerFactory(Components.ID("{721c3e73-969e-474b-a6dc-059fd288c428}"), + "Fake Plugin Host", + "@mozilla.org/plugin/host;1", PluginHostFactory); var gPluginIDs = [null, null, null, null, null]; @@ -176,10 +174,10 @@ function run_test_3() { [PLUGINS[0], PLUGINS[1]] = [PLUGINS[1], PLUGINS[0]]; restartManager(); - AddonManager.getAddonByID(gPluginIDs[0], function(p_2) { - do_check_neq(p_2, null); - do_check_eq(p_2.name, "Duplicate Plugin 1"); - do_check_eq(p_2.description, "A duplicate plugin"); + AddonManager.getAddonByID(gPluginIDs[0], function(p) { + do_check_neq(p, null); + do_check_eq(p.name, "Duplicate Plugin 1"); + do_check_eq(p.description, "A duplicate plugin"); do_execute_soon(do_test_finished); }); |