diff options
Diffstat (limited to 'toolkit/devtools/commandline/test/browser_cmd_pref3.js')
-rw-r--r-- | toolkit/devtools/commandline/test/browser_cmd_pref3.js | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/toolkit/devtools/commandline/test/browser_cmd_pref3.js b/toolkit/devtools/commandline/test/browser_cmd_pref3.js new file mode 100644 index 000000000..fea31d948 --- /dev/null +++ b/toolkit/devtools/commandline/test/browser_cmd_pref3.js @@ -0,0 +1,113 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ */ + +// Tests that the pref commands work + +let prefBranch = Cc["@mozilla.org/preferences-service;1"] + .getService(Ci.nsIPrefService).getBranch(null) + .QueryInterface(Ci.nsIPrefBranch2); + +let supportsString = Cc["@mozilla.org/supports-string;1"] + .createInstance(Ci.nsISupportsString); + +const TEST_URI = "data:text/html;charset=utf-8,gcli-pref3"; + +function test() { + return Task.spawn(spawnTest).then(finish, helpers.handleError); +} + +function spawnTest() { + let options = yield helpers.openTab(TEST_URI); + yield helpers.openToolbar(options); + + let remoteHostOrig = prefBranch.getComplexValue("devtools.debugger.remote-host", + Ci.nsISupportsString).data; + info("originally: devtools.debugger.remote-host = " + remoteHostOrig); + + yield helpers.audit(options, [ + { + setup: 'pref show devtools.debugger.remote-host', + check: { + args: { + setting: { + value: options.requisition.system.settings.get("devtools.debugger.remote-host") + } + }, + }, + exec: { + output: new RegExp("^devtools\.debugger\.remote-host: " + remoteHostOrig + "$"), + }, + }, + { + setup: 'pref set devtools.debugger.remote-host e.com', + check: { + args: { + setting: { + value: options.requisition.system.settings.get("devtools.debugger.remote-host") + }, + value: { value: "e.com" } + }, + }, + exec: { + output: '', + }, + }, + { + setup: 'pref show devtools.debugger.remote-host', + check: { + args: { + setting: { + value: options.requisition.system.settings.get("devtools.debugger.remote-host") + } + }, + }, + exec: { + output: new RegExp("^devtools\.debugger\.remote-host: e.com$"), + }, + post: function() { + var ecom = prefBranch.getComplexValue("devtools.debugger.remote-host", + Ci.nsISupportsString).data; + is(ecom, "e.com", "devtools.debugger.remote-host is e.com"); + } + }, + { + setup: 'pref set devtools.debugger.remote-host moz.foo', + check: { + args: { + setting: { + value: options.requisition.system.settings.get("devtools.debugger.remote-host") + }, + value: { value: "moz.foo" } + }, + }, + exec: { + output: '', + }, + }, + { + setup: 'pref show devtools.debugger.remote-host', + check: { + args: { + setting: { + value: options.requisition.system.settings.get("devtools.debugger.remote-host") + } + }, + }, + exec: { + output: new RegExp("^devtools\.debugger\.remote-host: moz.foo$"), + }, + post: function() { + var mozfoo = prefBranch.getComplexValue("devtools.debugger.remote-host", + Ci.nsISupportsString).data; + is(mozfoo, "moz.foo", "devtools.debugger.remote-host is moz.foo"); + } + }, + ]); + + supportsString.data = remoteHostOrig; + prefBranch.setComplexValue("devtools.debugger.remote-host", + Ci.nsISupportsString, supportsString); + + yield helpers.closeToolbar(options); + yield helpers.closeTab(options); +} |