summaryrefslogtreecommitdiffstats
path: root/toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js')
-rw-r--r--toolkit/mozapps/extensions/test/xpcshell/test_duplicateplugins.js58
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);
});