browser/devtools/commandline/test/browser_cmd_settings.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 /* Any copyright is dedicated to the Public Domain.
     2  * http://creativecommons.org/publicdomain/zero/1.0/ */
     4 // Tests that the pref commands work
     6 let prefBranch = Cc["@mozilla.org/preferences-service;1"]
     7                     .getService(Ci.nsIPrefService).getBranch(null)
     8                     .QueryInterface(Ci.nsIPrefBranch2);
    10 let supportsString = Cc["@mozilla.org/supports-string;1"]
    11                       .createInstance(Ci.nsISupportsString);
    13 let settings = require("gcli/settings");
    15 const TEST_URI = "data:text/html;charset=utf-8,gcli-settings";
    17 function test() {
    18   return Task.spawn(spawnTest).then(finish, helpers.handleError);
    19 }
    21 function spawnTest() {
    22   // Setup
    23   let options = yield helpers.openTab(TEST_URI);
    25   let tiltEnabled = settings.getSetting("devtools.tilt.enabled");
    26   let tabSize = settings.getSetting("devtools.editor.tabsize");
    27   let remoteHost = settings.getSetting("devtools.debugger.remote-host");
    29   let tiltEnabledOrig = prefBranch.getBoolPref("devtools.tilt.enabled");
    30   let tabSizeOrig = prefBranch.getIntPref("devtools.editor.tabsize");
    31   let remoteHostOrig = prefBranch.getComplexValue(
    32           "devtools.debugger.remote-host",
    33           Components.interfaces.nsISupportsString).data;
    35   info("originally: devtools.tilt.enabled = " + tiltEnabledOrig);
    36   info("originally: devtools.editor.tabsize = " + tabSizeOrig);
    37   info("originally: devtools.debugger.remote-host = " + remoteHostOrig);
    39   // Actual tests
    40   is(tiltEnabled.value, tiltEnabledOrig, "tiltEnabled default");
    41   is(tabSize.value, tabSizeOrig, "tabSize default");
    42   is(remoteHost.value, remoteHostOrig, "remoteHost default");
    44   tiltEnabled.setDefault();
    45   tabSize.setDefault();
    46   remoteHost.setDefault();
    48   let tiltEnabledDefault = tiltEnabled.value;
    49   let tabSizeDefault = tabSize.value;
    50   let remoteHostDefault = remoteHost.value;
    52   tiltEnabled.value = false;
    53   tabSize.value = 42;
    54   remoteHost.value = "example.com"
    56   is(tiltEnabled.value, false, "tiltEnabled basic");
    57   is(tabSize.value, 42, "tabSize basic");
    58   is(remoteHost.value, "example.com", "remoteHost basic");
    60   function tiltEnabledCheck(ev) {
    61     is(ev.setting, tiltEnabled, "tiltEnabled event setting");
    62     is(ev.value, true, "tiltEnabled event value");
    63     is(ev.setting.value, true, "tiltEnabled event setting value");
    64   }
    65   tiltEnabled.onChange.add(tiltEnabledCheck);
    66   tiltEnabled.value = true;
    67   is(tiltEnabled.value, true, "tiltEnabled change");
    69   function tabSizeCheck(ev) {
    70     is(ev.setting, tabSize, "tabSize event setting");
    71     is(ev.value, 1, "tabSize event value");
    72     is(ev.setting.value, 1, "tabSize event setting value");
    73   }
    74   tabSize.onChange.add(tabSizeCheck);
    75   tabSize.value = 1;
    76   is(tabSize.value, 1, "tabSize change");
    78   function remoteHostCheck(ev) {
    79     is(ev.setting, remoteHost, "remoteHost event setting");
    80     is(ev.value, "y.com", "remoteHost event value");
    81     is(ev.setting.value, "y.com", "remoteHost event setting value");
    82   }
    83   remoteHost.onChange.add(remoteHostCheck);
    84   remoteHost.value = "y.com";
    85   is(remoteHost.value, "y.com", "remoteHost change");
    87   tiltEnabled.onChange.remove(tiltEnabledCheck);
    88   tabSize.onChange.remove(tabSizeCheck);
    89   remoteHost.onChange.remove(remoteHostCheck);
    91   function remoteHostReCheck(ev) {
    92     is(ev.setting, remoteHost, "remoteHost event reset");
    93     is(ev.value, null, "remoteHost event revalue");
    94     is(ev.setting.value, null, "remoteHost event setting revalue");
    95   }
    96   remoteHost.onChange.add(remoteHostReCheck);
    98   tiltEnabled.setDefault();
    99   tabSize.setDefault();
   100   remoteHost.setDefault();
   102   remoteHost.onChange.remove(remoteHostReCheck);
   104   is(tiltEnabled.value, tiltEnabledDefault, "tiltEnabled reset");
   105   is(tabSize.value, tabSizeDefault, "tabSize reset");
   106   is(remoteHost.value, remoteHostDefault, "remoteHost reset");
   108   // Cleanup
   109   prefBranch.setBoolPref("devtools.tilt.enabled", tiltEnabledOrig);
   110   prefBranch.setIntPref("devtools.editor.tabsize", tabSizeOrig);
   111   supportsString.data = remoteHostOrig;
   112   prefBranch.setComplexValue("devtools.debugger.remote-host",
   113           Components.interfaces.nsISupportsString,
   114           supportsString);
   116   yield helpers.closeTab(options);
   117 }

mercurial