Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
1 Components.utils.import("resource://gre/modules/Services.jsm");
3 function run_test() {
4 let pluginDefaultState = Services.prefs.getIntPref("plugin.default.state");
5 // if this fails, we just have to switch around the values we're testing
6 do_check_neq(pluginDefaultState, Ci.nsIPluginTag.STATE_DISABLED);
7 let nonDefaultState = (pluginDefaultState != Ci.nsIPluginTag.STATE_ENABLED ?
8 Ci.nsIPluginTag.STATE_ENABLED :
9 Ci.nsIPluginTag.STATE_CLICKTOPLAY);
10 let ph = Cc["@mozilla.org/plugin/host;1"].getService(Ci.nsIPluginHost);
11 let testPlugin = get_test_plugintag();
12 // the test plugin should have the default enabledState
13 do_check_eq(testPlugin.enabledState, pluginDefaultState);
15 let secondTestPlugin = get_test_plugintag("Second Test Plug-in");
16 // set an enabledState for the second test plugin
17 secondTestPlugin.enabledState = Ci.nsIPluginTag.STATE_DISABLED;
18 // change what the default enabledState is
19 Services.prefs.setIntPref("plugin.default.state", nonDefaultState);
20 // the test plugin should follow the default (it has no individual pref yet)
21 do_check_eq(testPlugin.enabledState, nonDefaultState);
22 // the second test plugin should retain its preferred state
23 do_check_eq(secondTestPlugin.enabledState, Ci.nsIPluginTag.STATE_DISABLED);
25 // clean up
26 testPlugin.enabledState = pluginDefaultState;
27 secondTestPlugin.enabledState = pluginDefaultState;
28 Services.prefs.clearUserPref("plugin.default.state");
29 Services.prefs.clearUserPref("plugin.importedState");
30 }