dom/plugins/test/unit/test_plugin_default_state.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     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 }

mercurial