author | Alexandre Poirot <poirot.alex@gmail.com> |
Wed, 21 Mar 2018 09:02:02 -0700 | |
changeset 418818 | 6a62f53c809889650519a094bd4d84cd44466194 |
parent 418817 | 4379cbe42ce38fd75eda993a068eeb57e3974056 |
child 418819 | fe9e01a0dce79382fc8b1a6d9de88ed3697448d0 |
push id | 34014 |
push user | aciure@mozilla.com |
push date | Fri, 18 May 2018 22:04:52 +0000 |
treeherder | mozilla-central@b54f574a1dd2 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | jryans |
bugs | 1461970 |
milestone | 62.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/devtools/client/commandline/moz.build +++ b/devtools/client/commandline/moz.build @@ -1,5 +1,7 @@ # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. -BROWSER_CHROME_MANIFESTS += ['test/browser.ini'] +BROWSER_CHROME_MANIFESTS += [ + 'test/browser.ini', +]
--- a/devtools/client/commandline/test/browser.ini +++ b/devtools/client/commandline/test/browser.ini @@ -1,50 +1,13 @@ [DEFAULT] -skip-if = e10s # Bug 1034511 tags = devtools subsuite = devtools support-files = head.js helpers.js mockCommands.js -[browser_cmd_calllog.js] -skip-if = true # Bug 845831 -[browser_cmd_calllog_chrome.js] -skip-if = true # Bug 845831 -[browser_cmd_csscoverage_util.js] -skip-if = (e10s && debug) # Bug 1034511 (docShell leaks on debug) -[browser_cmd_settings.js] -[browser_gcli_async.js] -[browser_gcli_canon.js] -[browser_gcli_cli1.js] -[browser_gcli_cli2.js] -[browser_gcli_completion1.js] -[browser_gcli_completion2.js] -[browser_gcli_date.js] -skip-if = true # Bug 934098 -[browser_gcli_exec.js] -[browser_gcli_fail.js] -[browser_gcli_file.js] -[browser_gcli_focus.js] -[browser_gcli_history.js] -[browser_gcli_incomplete.js] -[browser_gcli_inputter.js] -skip-if = true # Bug 1093205 - Test does not run in Firefox due to missing terminal bug -[browser_gcli_intro.js] -[browser_gcli_js.js] -[browser_gcli_keyboard1.js] -[browser_gcli_keyboard2.js] -[browser_gcli_keyboard3.js] -[browser_gcli_keyboard4.js] -[browser_gcli_keyboard5.js] -[browser_gcli_menu.js] -[browser_gcli_node.js] -[browser_gcli_resource.js] -[browser_gcli_short.js] -[browser_gcli_spell.js] -[browser_gcli_split.js] -[browser_gcli_tokenize.js] -[browser_gcli_tooltip.js] -skip-if = true # Bug 1093205 - Test does not run in Firefox due to missing terminal -[browser_gcli_types.js] -[browser_gcli_union.js] +# Bug 1447494 - browser.ini file has to have at least one test file +# browser.js is empty, we have this just to expose test helper files +# for other folder still using it +[browser.js] +skip-if = true
new file mode 100644 --- /dev/null +++ b/devtools/client/commandline/test/browser.js @@ -0,0 +1,1 @@ +
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_cmd_settings.js +++ /dev/null @@ -1,117 +0,0 @@ -/* Any copyright is dedicated to the Public Domain. - * http://creativecommons.org/publicdomain/zero/1.0/ */ - -// Tests that the pref commands work - -var prefBranch = Cc["@mozilla.org/preferences-service;1"] - .getService(Ci.nsIPrefService).getBranch(null) - .QueryInterface(Ci.nsIPrefBranch); - -const TEST_URI = "data:text/html;charset=utf-8,gcli-settings"; - -function test() { - return Task.spawn(spawnTest).then(finish, helpers.handleError); -} - -function* spawnTest() { - // Setup - let options = yield helpers.openTab(TEST_URI); - - const { createSystem } = require("gcli/system"); - const system = createSystem({ location: "server" }); - - const gcliInit = require("devtools/shared/gcli/commands/index"); - gcliInit.addAllItemsByModule(system); - yield system.load(); - - let settings = system.settings; - - let hideIntroEnabled = settings.get("devtools.gcli.hideIntro"); - let tabSize = settings.get("devtools.editor.tabsize"); - let remoteHost = settings.get("devtools.debugger.remote-host"); - - let hideIntroOrig = prefBranch.getBoolPref("devtools.gcli.hideIntro"); - let tabSizeOrig = prefBranch.getIntPref("devtools.editor.tabsize"); - let remoteHostOrig = prefBranch.getStringPref( - "devtools.debugger.remote-host"); - - info("originally: devtools.gcli.hideIntro = " + hideIntroOrig); - info("originally: devtools.editor.tabsize = " + tabSizeOrig); - info("originally: devtools.debugger.remote-host = " + remoteHostOrig); - - // Actual tests - is(hideIntroEnabled.value, hideIntroOrig, "hideIntroEnabled default"); - is(tabSize.value, tabSizeOrig, "tabSize default"); - is(remoteHost.value, remoteHostOrig, "remoteHost default"); - - hideIntroEnabled.setDefault(); - tabSize.setDefault(); - remoteHost.setDefault(); - - let hideIntroEnabledDefault = hideIntroEnabled.value; - let tabSizeDefault = tabSize.value; - let remoteHostDefault = remoteHost.value; - - hideIntroEnabled.value = false; - tabSize.value = 42; - remoteHost.value = "example.com"; - - is(hideIntroEnabled.value, false, "hideIntroEnabled basic"); - is(tabSize.value, 42, "tabSize basic"); - is(remoteHost.value, "example.com", "remoteHost basic"); - - function hideIntroEnabledCheck(ev) { - is(ev.setting, hideIntroEnabled, "hideIntroEnabled event setting"); - is(ev.value, true, "hideIntroEnabled event value"); - is(ev.setting.value, true, "hideIntroEnabled event setting value"); - } - hideIntroEnabled.onChange.add(hideIntroEnabledCheck); - hideIntroEnabled.value = true; - is(hideIntroEnabled.value, true, "hideIntroEnabled change"); - - function tabSizeCheck(ev) { - is(ev.setting, tabSize, "tabSize event setting"); - is(ev.value, 1, "tabSize event value"); - is(ev.setting.value, 1, "tabSize event setting value"); - } - tabSize.onChange.add(tabSizeCheck); - tabSize.value = 1; - is(tabSize.value, 1, "tabSize change"); - - function remoteHostCheck(ev) { - is(ev.setting, remoteHost, "remoteHost event setting"); - is(ev.value, "y.com", "remoteHost event value"); - is(ev.setting.value, "y.com", "remoteHost event setting value"); - } - remoteHost.onChange.add(remoteHostCheck); - remoteHost.value = "y.com"; - is(remoteHost.value, "y.com", "remoteHost change"); - - hideIntroEnabled.onChange.remove(hideIntroEnabledCheck); - tabSize.onChange.remove(tabSizeCheck); - remoteHost.onChange.remove(remoteHostCheck); - - function remoteHostReCheck(ev) { - is(ev.setting, remoteHost, "remoteHost event reset"); - is(ev.value, null, "remoteHost event revalue"); - is(ev.setting.value, null, "remoteHost event setting revalue"); - } - remoteHost.onChange.add(remoteHostReCheck); - - hideIntroEnabled.setDefault(); - tabSize.setDefault(); - remoteHost.setDefault(); - - remoteHost.onChange.remove(remoteHostReCheck); - - is(hideIntroEnabled.value, hideIntroEnabledDefault, "hideIntroEnabled reset"); - is(tabSize.value, tabSizeDefault, "tabSize reset"); - is(remoteHost.value, remoteHostDefault, "remoteHost reset"); - - // Cleanup - prefBranch.setBoolPref("devtools.gcli.hideIntro", hideIntroOrig); - prefBranch.setIntPref("devtools.editor.tabsize", tabSizeOrig); - prefBranch.setStringPref("devtools.debugger.remote-host", remoteHostOrig); - - yield helpers.closeTab(options); -}
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_async.js +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_async.js"); -} - -// var helpers = require('./helpers'); - -exports.testBasic = function (options) { - return helpers.audit(options, [ - { - setup: "tsslo", - check: { - input: "tsslo", - hints: "w", - markup: "IIIII", - cursor: 5, - current: "__command", - status: "ERROR", - predictions: ["tsslow"], - unassigned: [ ] - } - }, - { - setup: "tsslo<TAB>", - check: { - input: "tsslow ", - hints: "Shalom", - markup: "VVVVVVV", - cursor: 7, - current: "hello", - status: "ERROR", - predictions: [ - "Shalom", "Namast\u{00E9}", "Hallo", "Dydd-da", "Ch\u{00E0}o", "Hej", - "Saluton", "Sawubona" - ], - unassigned: [ ], - args: { - command: { name: "tsslow" }, - hello: { - arg: "", - status: "INCOMPLETE" - }, - } - } - }, - { - setup: "tsslow S", - check: { - input: "tsslow S", - hints: "halom", - markup: "VVVVVVVI", - cursor: 8, - current: "hello", - status: "ERROR", - predictions: [ "Shalom", "Saluton", "Sawubona", "Namast\u{00E9}" ], - unassigned: [ ], - args: { - command: { name: "tsslow" }, - hello: { - arg: " S", - status: "INCOMPLETE" - }, - } - } - }, - { - setup: "tsslow S<TAB>", - check: { - input: "tsslow Shalom ", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "hello", - status: "VALID", - predictions: [ "Shalom" ], - unassigned: [ ], - args: { - command: { name: "tsslow" }, - hello: { - arg: " Shalom ", - status: "VALID", - message: "" - }, - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_canon.js +++ /dev/null @@ -1,286 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_canon.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); -var Commands = require("gcli/commands/commands").Commands; - -var startCount; -var events; - -var commandsChange = function (ev) { - events++; -}; - -exports.setup = function (options) { - startCount = options.requisition.system.commands.getAll().length; - events = 0; -}; - -exports.shutdown = function (options) { - startCount = undefined; - events = undefined; -}; - -exports.testAddRemove1 = function (options) { - var commands = options.requisition.system.commands; - - return helpers.audit(options, [ - { - name: "testadd add", - setup: function () { - commands.onCommandsChange.add(commandsChange); - - commands.add({ - name: "testadd", - exec: function () { - return 1; - } - }); - - assert.is(commands.getAll().length, - startCount + 1, - "add command success"); - assert.is(events, 1, "add event"); - - return helpers.setInput(options, "testadd"); - }, - check: { - input: "testadd", - hints: "", - markup: "VVVVVVV", - cursor: 7, - current: "__command", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { } - }, - exec: { - output: /^1$/ - } - }, - { - name: "testadd alter", - setup: function () { - commands.add({ - name: "testadd", - exec: function () { - return 2; - } - }); - - assert.is(commands.getAll().length, - startCount + 1, - "read command success"); - assert.is(events, 2, "read event"); - - return helpers.setInput(options, "testadd"); - }, - check: { - input: "testadd", - hints: "", - markup: "VVVVVVV", - }, - exec: { - output: "2" - } - }, - { - name: "testadd remove", - setup: function () { - commands.remove("testadd"); - - assert.is(commands.getAll().length, - startCount, - "remove command success"); - assert.is(events, 3, "remove event"); - - return helpers.setInput(options, "testadd"); - }, - check: { - typed: "testadd", - cursor: 7, - current: "__command", - status: "ERROR", - unassigned: [ ], - } - } - ]); -}; - -exports.testAddRemove2 = function (options) { - var commands = options.requisition.system.commands; - - commands.add({ - name: "testadd", - exec: function () { - return 3; - } - }); - - assert.is(commands.getAll().length, - startCount + 1, - "rereadd command success"); - assert.is(events, 4, "rereadd event"); - - return helpers.audit(options, [ - { - setup: "testadd", - exec: { - output: /^3$/ - }, - post: function () { - commands.remove({ - name: "testadd" - }); - - assert.is(commands.getAll().length, - startCount, - "reremove command success"); - assert.is(events, 5, "reremove event"); - } - }, - { - setup: "testadd", - check: { - typed: "testadd", - status: "ERROR" - } - } - ]); -}; - -exports.testAddRemove3 = function (options) { - var commands = options.requisition.system.commands; - - commands.remove({ name: "nonexistant" }); - assert.is(commands.getAll().length, - startCount, - "nonexistant1 command success"); - assert.is(events, 5, "nonexistant1 event"); - - commands.remove("nonexistant"); - assert.is(commands.getAll().length, - startCount, - "nonexistant2 command success"); - assert.is(events, 5, "nonexistant2 event"); - - commands.onCommandsChange.remove(commandsChange); -}; - -exports.testAltCommands = function (options) { - var commands = options.requisition.system.commands; - var altCommands = new Commands(options.requisition.system.types); - - var tss = { - name: "tss", - params: [ - { name: "str", type: "string" }, - { name: "num", type: "number" }, - { name: "opt", type: { name: "selection", data: [ "1", "2", "3" ] } }, - ], - customProp1: "localValue", - customProp2: true, - customProp3: 42, - exec: function (args, context) { - return context.commandName + ":" + - args.str + ":" + args.num + ":" + args.opt; - } - }; - altCommands.add(tss); - - var commandSpecs = altCommands.getCommandSpecs(); - assert.is(JSON.stringify(commandSpecs), - '[{"item":"command","name":"tss","params":[' + - '{"name":"str","type":"string"},' + - '{"name":"num","type":"number"},' + - '{"name":"opt","type":{"name":"selection","data":["1","2","3"]}}' + - '],"isParent":false}]', - "JSON.stringify(commandSpecs)"); - - var customProps = [ "customProp1", "customProp2", "customProp3", ]; - var commandSpecs2 = altCommands.getCommandSpecs(customProps); - assert.is(JSON.stringify(commandSpecs2), - "[{" + - '"item":"command",' + - '"name":"tss",' + - '"params":[' + - '{"name":"str","type":"string"},' + - '{"name":"num","type":"number"},' + - '{"name":"opt","type":{"name":"selection","data":["1","2","3"]}}' + - "]," + - '"isParent":false,' + - '"customProp1":"localValue",' + - '"customProp2":true,' + - '"customProp3":42' + - "}]", - "JSON.stringify(commandSpecs)"); - - var remoter = function (args, context) { - assert.is(context.commandName, "tss", "commandName is tss"); - - var cmd = altCommands.get(context.commandName); - return cmd.exec(args, context); - }; - - commands.addProxyCommands(commandSpecs, remoter, "proxy", "test"); - - var parent = commands.get("proxy"); - assert.is(parent.name, "proxy", "Parent command called proxy"); - - var child = commands.get("proxy tss"); - assert.is(child.name, "proxy tss", "child command called proxy tss"); - - return helpers.audit(options, [ - { - setup: "proxy tss foo 6 3", - check: { - input: "proxy tss foo 6 3", - hints: "", - markup: "VVVVVVVVVVVVVVVVV", - cursor: 17, - status: "VALID", - args: { - str: { value: "foo", status: "VALID" }, - num: { value: 6, status: "VALID" }, - opt: { value: "3", status: "VALID" } - } - }, - exec: { - output: "tss:foo:6:3" - }, - post: function () { - commands.remove("proxy"); - commands.remove("proxy tss"); - - assert.is(commands.get("proxy"), undefined, "remove proxy"); - assert.is(commands.get("proxy tss"), undefined, "remove proxy tss"); - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_cli1.js +++ /dev/null @@ -1,528 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_cli1.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -exports.testBlank = function (options) { - return helpers.audit(options, [ - { - setup: "", - check: { - input: "", - hints: "", - markup: "", - cursor: 0, - current: "__command", - status: "ERROR" - }, - post: function () { - assert.is(options.requisition.commandAssignment.value, undefined); - } - }, - { - setup: " ", - check: { - input: " ", - hints: "", - markup: "V", - cursor: 1, - current: "__command", - status: "ERROR" - }, - post: function () { - assert.is(options.requisition.commandAssignment.value, undefined); - } - }, - { - name: "| ", - setup: function () { - return helpers.setInput(options, " ", 0); - }, - check: { - input: " ", - hints: "", - markup: "V", - cursor: 0, - current: "__command", - status: "ERROR" - }, - post: function () { - assert.is(options.requisition.commandAssignment.value, undefined); - } - } - ]); -}; - -exports.testDelete = function (options) { - return helpers.audit(options, [ - { - setup: "x<BACKSPACE>", - check: { - input: "", - hints: "", - markup: "", - cursor: 0, - current: "__command", - status: "ERROR" - }, - post: function () { - assert.is(options.requisition.commandAssignment.value, undefined); - } - } - ]); -}; - -exports.testIncompleteMultiMatch = function (options) { - return helpers.audit(options, [ - { - setup: "tsn ex", - check: { - input: "tsn ex", - hints: "t", - markup: "IIIVII", - cursor: 6, - current: "__command", - status: "ERROR", - predictionsContains: [ - "tsn ext", "tsn exte", "tsn exten", "tsn extend" - ] - } - } - ]); -}; - -exports.testIncompleteSingleMatch = function (options) { - return helpers.audit(options, [ - { - setup: "tselar", - check: { - input: "tselar", - hints: "r", - markup: "IIIIII", - cursor: 6, - current: "__command", - status: "ERROR", - predictions: [ "tselarr" ], - unassigned: [ ] - } - } - ]); -}; - -exports.testTsv = function (options) { - return helpers.audit(options, [ - { - setup: "tsv", - check: { - input: "tsv", - hints: " <optionType> <optionValue>", - markup: "VVV", - cursor: 3, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsv" }, - optionType: { arg: "", status: "INCOMPLETE" }, - optionValue: { arg: "", status: "INCOMPLETE" } - } - } - }, - { - setup: "tsv ", - check: { - input: "tsv ", - hints: "option1 <optionValue>", - markup: "VVVV", - cursor: 4, - current: "optionType", - status: "ERROR", - predictions: [ "option1", "option2", "option3" ], - unassigned: [ ], - tooltipState: "true:importantFieldFlag", - args: { - command: { name: "tsv" }, - optionType: { arg: "", status: "INCOMPLETE" }, - optionValue: { arg: "", status: "INCOMPLETE" } - } - } - }, - { - name: "ts|v", - setup: function () { - return helpers.setInput(options, "tsv ", 2); - }, - check: { - input: "tsv ", - hints: "<optionType> <optionValue>", - markup: "VVVV", - cursor: 2, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsv" }, - optionType: { arg: "", status: "INCOMPLETE" }, - optionValue: { arg: "", status: "INCOMPLETE" } - } - } - }, - { - setup: "tsv o", - check: { - input: "tsv o", - hints: "ption1 <optionValue>", - markup: "VVVVI", - cursor: 5, - current: "optionType", - status: "ERROR", - predictions: [ "option1", "option2", "option3" ], - unassigned: [ ], - tooltipState: "true:importantFieldFlag", - args: { - command: { name: "tsv" }, - optionType: { - value: undefined, - arg: " o", - status: "INCOMPLETE", - message: "Value required for \u2018optionType\u2019." - }, - optionValue: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018optionValue\u2019." - } - } - } - }, - { - setup: "tsv option", - check: { - input: "tsv option", - hints: "1 <optionValue>", - markup: "VVVVIIIIII", - cursor: 10, - current: "optionType", - status: "ERROR", - predictions: [ "option1", "option2", "option3" ], - unassigned: [ ], - tooltipState: "true:importantFieldFlag", - args: { - command: { name: "tsv" }, - optionType: { - value: undefined, - arg: " option", - status: "INCOMPLETE", - message: "Value required for \u2018optionType\u2019." - }, - optionValue: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018optionValue\u2019." - } - } - } - }, - { - name: "|tsv option", - setup: function () { - return helpers.setInput(options, "tsv option", 0); - }, - check: { - input: "tsv option", - hints: " <optionValue>", - markup: "VVVVEEEEEE", - cursor: 0, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsv" }, - optionType: { - value: undefined, - arg: " option", - status: "INCOMPLETE", - message: "Value required for \u2018optionType\u2019." - }, - optionValue: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018optionValue\u2019." - } - } - } - }, - { - setup: "tsv option ", - check: { - input: "tsv option ", - hints: "<optionValue>", - markup: "VVVVEEEEEEV", - cursor: 11, - current: "optionValue", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - tooltipState: "false:default", - args: { - command: { name: "tsv" }, - optionType: { - value: undefined, - arg: " option ", - status: "ERROR", - message: "Can\u2019t use \u2018option\u2019." - }, - optionValue: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018optionValue\u2019." - } - } - } - }, - { - setup: "tsv option1", - check: { - input: "tsv option1", - hints: " <optionValue>", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "optionType", - status: "ERROR", - predictions: [ "option1" ], - unassigned: [ ], - tooltipState: "true:importantFieldFlag", - args: { - command: { name: "tsv" }, - optionType: { - value: "string", - arg: " option1", - status: "VALID", - message: "" - }, - optionValue: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018optionValue\u2019." - } - } - } - }, - { - setup: "tsv option1 ", - check: { - input: "tsv option1 ", - hints: "<optionValue>", - markup: "VVVVVVVVVVVV", - cursor: 12, - current: "optionValue", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsv" }, - optionType: { - value: "string", - arg: " option1 ", - status: "VALID", - message: "" - }, - optionValue: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018optionValue\u2019." - } - } - } - }, - { - setup: "tsv option2", - check: { - input: "tsv option2", - hints: " <optionValue>", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "optionType", - status: "ERROR", - predictions: [ "option2" ], - unassigned: [ ], - tooltipState: "true:importantFieldFlag", - args: { - command: { name: "tsv" }, - optionType: { - value: "number", - arg: " option2", - status: "VALID", - message: "" - }, - optionValue: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018optionValue\u2019." - } - } - } - } - ]); -}; - -exports.testTsvValues = function (options) { - return helpers.audit(options, [ - { - setup: "tsv option1 6", - check: { - input: "tsv option1 6", - hints: "", - markup: "VVVVVVVVVVVVV", - cursor: 13, - current: "optionValue", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsv" }, - optionType: { - value: "string", - arg: " option1", - status: "VALID", - message: "" - }, - optionValue: { - arg: " 6", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tsv option2 6", - check: { - input: "tsv option2 6", - hints: "", - markup: "VVVVVVVVVVVVV", - cursor: 13, - current: "optionValue", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsv" }, - optionType: { - value: "number", - arg: " option2", - status: "VALID", - message: "" - }, - optionValue: { - arg: " 6", - status: "VALID", - message: "" - } - } - } - }, - // Delegated remote types can't transfer value types so we only test for - // the value of 'value' when we're local - { - skipIf: options.isRemote, - setup: "tsv option1 6", - check: { - args: { - optionValue: { value: "6" } - } - } - }, - { - skipIf: options.isRemote, - setup: "tsv option2 6", - check: { - args: { - optionValue: { value: 6 } - } - } - } - ]); -}; - -exports.testInvalid = function (options) { - return helpers.audit(options, [ - { - setup: "zxjq", - check: { - input: "zxjq", - hints: "", - markup: "EEEE", - cursor: 4, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - tooltipState: "true:isError" - } - }, - { - setup: "zxjq ", - check: { - input: "zxjq ", - hints: "", - markup: "EEEEV", - cursor: 5, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - tooltipState: "true:isError" - } - }, - { - setup: "zxjq one", - check: { - input: "zxjq one", - hints: "", - markup: "EEEEVEEE", - cursor: 8, - current: "__unassigned", - status: "ERROR", - predictions: [ ], - unassigned: [ " one" ], - tooltipState: "true:isError" - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_cli2.js +++ /dev/null @@ -1,788 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_cli2.js"); -} - -// var helpers = require('./helpers'); - -exports.testSingleString = function (options) { - return helpers.audit(options, [ - { - setup: "tsr", - check: { - input: "tsr", - hints: " <text>", - markup: "VVV", - cursor: 3, - current: "__command", - status: "ERROR", - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018text\u2019." - } - } - } - }, - { - setup: "tsr ", - check: { - input: "tsr ", - hints: "<text>", - markup: "VVVV", - cursor: 4, - current: "text", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018text\u2019." - } - } - } - }, - { - setup: "tsr h", - check: { - input: "tsr h", - hints: "", - markup: "VVVVV", - cursor: 5, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: "h", - arg: " h", - status: "VALID", - message: "" - } - } - } - }, - { - setup: 'tsr "h h"', - check: { - input: 'tsr "h h"', - hints: "", - markup: "VVVVVVVVV", - cursor: 9, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: "h h", - arg: ' "h h"', - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tsr h h h", - check: { - input: "tsr h h h", - hints: "", - markup: "VVVVVVVVV", - cursor: 9, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: "h h h", - arg: " h h h", - status: "VALID", - message: "" - } - } - } - } - ]); -}; - -exports.testSingleNumber = function (options) { - return helpers.audit(options, [ - { - setup: "tsu", - check: { - input: "tsu", - hints: " <num>", - markup: "VVV", - cursor: 3, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsu" }, - num: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018num\u2019." - } - } - } - }, - { - setup: "tsu ", - check: { - input: "tsu ", - hints: "<num>", - markup: "VVVV", - cursor: 4, - current: "num", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsu" }, - num: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018num\u2019." - } - } - } - }, - { - setup: "tsu 1", - check: { - input: "tsu 1", - hints: "", - markup: "VVVVV", - cursor: 5, - current: "num", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsu" }, - num: { value: 1, arg: " 1", status: "VALID", message: "" } - } - } - }, - { - setup: "tsu x", - check: { - input: "tsu x", - hints: "", - markup: "VVVVE", - cursor: 5, - current: "num", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - tooltipState: "true:isError", - args: { - command: { name: "tsu" }, - num: { - value: undefined, - arg: " x", - status: "ERROR", - message: "Can\u2019t convert \u201cx\u201d to a number." - } - } - } - }, - { - setup: "tsu 1.5", - check: { - input: "tsu 1.5", - hints: "", - markup: "VVVVEEE", - cursor: 7, - current: "num", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsu" }, - num: { - value: undefined, - arg: " 1.5", - status: "ERROR", - message: "Can\u2019t convert \u201c1.5\u201d to an integer." - } - } - } - } - ]); -}; - -exports.testSingleFloat = function (options) { - return helpers.audit(options, [ - { - setup: "tsf", - check: { - input: "tsf", - hints: " <num>", - markup: "VVV", - cursor: 3, - current: "__command", - status: "ERROR", - error: "", - unassigned: [ ], - args: { - command: { name: "tsf" }, - num: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018num\u2019." - } - } - } - }, - { - setup: "tsf 1", - check: { - input: "tsf 1", - hints: "", - markup: "VVVVV", - cursor: 5, - current: "num", - status: "VALID", - error: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsf" }, - num: { value: 1, arg: " 1", status: "VALID", message: "" } - } - } - }, - { - setup: "tsf 1.", - check: { - input: "tsf 1.", - hints: "", - markup: "VVVVVV", - cursor: 6, - current: "num", - status: "VALID", - error: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsf" }, - num: { value: 1, arg: " 1.", status: "VALID", message: "" } - } - } - }, - { - setup: "tsf 1.5", - check: { - input: "tsf 1.5", - hints: "", - markup: "VVVVVVV", - cursor: 7, - current: "num", - status: "VALID", - error: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsf" }, - num: { value: 1.5, arg: " 1.5", status: "VALID", message: "" } - } - } - }, - { - setup: "tsf 1.5x", - check: { - input: "tsf 1.5x", - hints: "", - markup: "VVVVVVVV", - cursor: 8, - current: "num", - status: "VALID", - error: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsf" }, - num: { value: 1.5, arg: " 1.5x", status: "VALID", message: "" } - } - } - }, - { - name: "tsf x (cursor=4)", - setup: function () { - return helpers.setInput(options, "tsf x", 4); - }, - check: { - input: "tsf x", - hints: "", - markup: "VVVVE", - cursor: 4, - current: "num", - status: "ERROR", - error: "Can\u2019t convert \u201cx\u201d to a number.", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsf" }, - num: { - value: undefined, - arg: " x", - status: "ERROR", - message: "Can\u2019t convert \u201cx\u201d to a number." - } - } - } - } - ]); -}; - -exports.testElementWeb = function (options) { - return helpers.audit(options, [ - { - setup: "tse #gcli-root", - check: { - input: "tse #gcli-root", - hints: " [options]", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "node", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tse" }, - node: { - arg: " #gcli-root", - status: "VALID", - message: "" - }, - nodes: { arg: "", status: "VALID", message: "" }, - nodes2: { arg: "", status: "VALID", message: "" }, - } - } - } - ]); -}; - -exports.testElement = function (options) { - return helpers.audit(options, [ - { - setup: "tse", - check: { - input: "tse", - hints: " <node> [options]", - markup: "VVV", - cursor: 3, - current: "__command", - status: "ERROR", - predictions: [ "tse", "tselarr" ], - unassigned: [ ], - args: { - command: { name: "tse" }, - node: { arg: "", status: "INCOMPLETE" }, - nodes: { arg: "", status: "VALID", message: "" }, - nodes2: { arg: "", status: "VALID", message: "" }, - } - } - }, - { - setup: "tse #gcli-nomatch", - check: { - input: "tse #gcli-nomatch", - hints: " [options]", - markup: "VVVVIIIIIIIIIIIII", - cursor: 17, - current: "node", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - outputState: "false:default", - tooltipState: "true:isError", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: " #gcli-nomatch", - // This is somewhat debatable because this input can't be corrected - // simply by typing so it's and error rather than incomplete, - // however without digging into the CSS engine we can't tell that - // so we default to incomplete - status: "INCOMPLETE", - message: "No matches" - }, - nodes: { arg: "", status: "VALID", message: "" }, - nodes2: { arg: "", status: "VALID", message: "" }, - } - } - }, - { - setup: "tse #", - check: { - input: "tse #", - hints: " [options]", - markup: "VVVVE", - cursor: 5, - current: "node", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - tooltipState: "true:isError", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: " #", - status: "ERROR", - message: "Syntax error in CSS query" - }, - nodes: { arg: "", status: "VALID", message: "" }, - nodes2: { arg: "", status: "VALID", message: "" }, - } - } - }, - { - setup: "tse .", - check: { - input: "tse .", - hints: " [options]", - markup: "VVVVE", - cursor: 5, - current: "node", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - tooltipState: "true:isError", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: " .", - status: "ERROR", - message: "Syntax error in CSS query" - }, - nodes: { arg: "", status: "VALID", message: "" }, - nodes2: { arg: "", status: "VALID", message: "" }, - } - } - }, - { - setup: "tse *", - check: { - input: "tse *", - hints: " [options]", - markup: "VVVVE", - cursor: 5, - current: "node", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - tooltipState: "true:isError", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: " *", - status: "ERROR", - message: /^Too many matches \([0-9]*\)/ - }, - nodes: { arg: "", status: "VALID", message: "" }, - nodes2: { arg: "", status: "VALID", message: "" }, - } - } - } - ]); -}; - -exports.testNestedCommand = function (options) { - return helpers.audit(options, [ - { - setup: "tsn", - check: { - input: "tsn", - hints: " deep down nested cmd", - markup: "III", - cursor: 3, - current: "__command", - status: "ERROR", - predictionsInclude: [ - "tsn deep", "tsn deep down", "tsn deep down nested", - "tsn deep down nested cmd", "tsn dif" - ], - unassigned: [ ], - args: { - command: { name: "tsn" } - } - } - }, - { - setup: "tsn ", - check: { - input: "tsn ", - hints: " deep down nested cmd", - markup: "IIIV", - cursor: 4, - current: "__command", - status: "ERROR", - unassigned: [ ] - } - }, - { - skipIf: options.isPhantomjs, // PhantomJS gets predictions wrong - setup: "tsn x", - check: { - input: "tsn x", - hints: " -> tsn ext", - markup: "IIIVI", - cursor: 5, - current: "__command", - status: "ERROR", - predictions: [ "tsn ext" ], - unassigned: [ ] - } - }, - { - setup: "tsn dif", - check: { - input: "tsn dif", - hints: " <text>", - markup: "VVVVVVV", - cursor: 7, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsn dif" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018text\u2019." - } - } - } - }, - { - setup: "tsn dif ", - check: { - input: "tsn dif ", - hints: "<text>", - markup: "VVVVVVVV", - cursor: 8, - current: "text", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsn dif" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018text\u2019." - } - } - } - }, - { - setup: "tsn dif x", - check: { - input: "tsn dif x", - hints: "", - markup: "VVVVVVVVV", - cursor: 9, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsn dif" }, - text: { value: "x", arg: " x", status: "VALID", message: "" } - } - } - }, - { - setup: "tsn ext", - check: { - input: "tsn ext", - hints: " <text>", - markup: "VVVVVVV", - cursor: 7, - current: "__command", - status: "ERROR", - predictions: [ "tsn ext", "tsn exte", "tsn exten", "tsn extend" ], - unassigned: [ ], - args: { - command: { name: "tsn ext" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018text\u2019." - } - } - } - }, - { - setup: "tsn exte", - check: { - input: "tsn exte", - hints: " <text>", - markup: "VVVVVVVV", - cursor: 8, - current: "__command", - status: "ERROR", - predictions: [ "tsn exte", "tsn exten", "tsn extend" ], - unassigned: [ ], - args: { - command: { name: "tsn exte" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018text\u2019." - } - } - } - }, - { - setup: "tsn exten", - check: { - input: "tsn exten", - hints: " <text>", - markup: "VVVVVVVVV", - cursor: 9, - current: "__command", - status: "ERROR", - predictions: [ "tsn exten", "tsn extend" ], - unassigned: [ ], - args: { - command: { name: "tsn exten" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018text\u2019." - } - } - } - }, - { - setup: "tsn extend", - check: { - input: "tsn extend", - hints: " <text>", - markup: "VVVVVVVVVV", - cursor: 10, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsn extend" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for \u2018text\u2019." - } - } - } - }, - { - setup: "ts ", - check: { - input: "ts ", - hints: "", - markup: "EEV", - cursor: 3, - current: "__command", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - tooltipState: "true:isError" - } - }, - ]); -}; - -// From Bug 664203 -exports.testDeeplyNested = function (options) { - return helpers.audit(options, [ - { - setup: "tsn deep down nested", - check: { - input: "tsn deep down nested", - hints: " cmd", - markup: "IIIVIIIIVIIIIVIIIIII", - cursor: 20, - current: "__command", - status: "ERROR", - predictions: [ "tsn deep down nested cmd" ], - unassigned: [ ], - outputState: "false:default", - tooltipState: "false:default", - args: { - command: { name: "tsn deep down nested" }, - } - } - }, - { - setup: "tsn deep down nested cmd", - check: { - input: "tsn deep down nested cmd", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVV", - cursor: 24, - current: "__command", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsn deep down nested cmd" }, - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_completion1.js +++ /dev/null @@ -1,277 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_completion1.js"); -} - -// var helpers = require('./helpers'); - -exports.testActivate = function (options) { - return helpers.audit(options, [ - { - setup: "", - check: { - hints: "" - } - }, - { - setup: " ", - check: { - hints: "" - } - }, - { - setup: "tsr", - check: { - hints: " <text>" - } - }, - { - setup: "tsr ", - check: { - hints: "<text>" - } - }, - { - setup: "tsr b", - check: { - hints: "" - } - }, - { - setup: "tsb", - check: { - hints: " [toggle]" - } - }, - { - setup: "tsm", - check: { - hints: " <abc> <txt> <num>" - } - }, - { - setup: "tsm ", - check: { - hints: "a <txt> <num>" - } - }, - { - setup: "tsm a", - check: { - hints: " <txt> <num>" - } - }, - { - setup: "tsm a ", - check: { - hints: "<txt> <num>" - } - }, - { - setup: "tsm a ", - check: { - hints: "<txt> <num>" - } - }, - { - setup: "tsm a d", - check: { - hints: " <num>" - } - }, - { - setup: 'tsm a "d d"', - check: { - hints: " <num>" - } - }, - { - setup: 'tsm a "d ', - check: { - hints: " <num>" - } - }, - { - setup: 'tsm a "d d" ', - check: { - hints: "<num>" - } - }, - { - setup: 'tsm a "d d ', - check: { - hints: " <num>" - } - }, - { - setup: "tsm d r", - check: { - hints: " <num>" - } - }, - { - setup: "tsm a d ", - check: { - hints: "<num>" - } - }, - { - setup: "tsm a d 4", - check: { - hints: "" - } - }, - { - setup: "tsg", - check: { - hints: " <solo> [options]" - } - }, - { - setup: "tsg ", - check: { - hints: "aaa [options]" - } - }, - { - setup: "tsg a", - check: { - hints: "aa [options]" - } - }, - { - setup: "tsg b", - check: { - hints: "bb [options]" - } - }, - { - skipIf: options.isPhantomjs, // PhantomJS gets predictions wrong - setup: "tsg d", - check: { - hints: " [options] -> ccc" - } - }, - { - setup: "tsg aa", - check: { - hints: "a [options]" - } - }, - { - setup: "tsg aaa", - check: { - hints: " [options]" - } - }, - { - setup: "tsg aaa ", - check: { - hints: "[options]" - } - }, - { - setup: "tsg aaa d", - check: { - hints: " [options]" - } - }, - { - setup: "tsg aaa dddddd", - check: { - hints: " [options]" - } - }, - { - setup: "tsg aaa dddddd ", - check: { - hints: "[options]" - } - }, - { - setup: 'tsg aaa "d', - check: { - hints: " [options]" - } - }, - { - setup: 'tsg aaa "d d', - check: { - hints: " [options]" - } - }, - { - setup: 'tsg aaa "d d"', - check: { - hints: " [options]" - } - }, - { - setup: "tsn ex ", - check: { - hints: "" - } - }, - { - setup: "selarr", - check: { - hints: " -> tselarr" - } - }, - { - setup: "tselar 1", - check: { - hints: "" - } - }, - { - name: "tselar |1", - setup: function () { - return helpers.setInput(options, "tselar 1", 7); - }, - check: { - hints: "" - } - }, - { - name: "tselar| 1", - setup: function () { - return helpers.setInput(options, "tselar 1", 6); - }, - check: { - hints: " -> tselarr" - } - }, - { - name: "tsela|r 1", - setup: function () { - return helpers.setInput(options, "tselar 1", 5); - }, - check: { - hints: " -> tselarr" - } - }, - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_completion2.js +++ /dev/null @@ -1,263 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_completion2.js"); -} - -// var helpers = require('./helpers'); - -exports.testLong = function (options) { - return helpers.audit(options, [ - { - setup: "tslong --sel", - check: { - input: "tslong --sel", - hints: " <selection> <msg> [options]", - markup: "VVVVVVVIIIII" - } - }, - { - setup: "tslong --sel<TAB>", - check: { - input: "tslong --sel ", - hints: "space <msg> [options]", - markup: "VVVVVVVIIIIIV" - } - }, - { - setup: "tslong --sel ", - check: { - input: "tslong --sel ", - hints: "space <msg> [options]", - markup: "VVVVVVVIIIIIV" - } - }, - { - setup: "tslong --sel s", - check: { - input: "tslong --sel s", - hints: "pace <msg> [options]", - markup: "VVVVVVVIIIIIVI" - } - }, - { - setup: "tslong --num ", - check: { - input: "tslong --num ", - hints: "<number> <msg> [options]", - markup: "VVVVVVVIIIIIV" - } - }, - { - setup: "tslong --num 42", - check: { - input: "tslong --num 42", - hints: " <msg> [options]", - markup: "VVVVVVVVVVVVVVV" - } - }, - { - setup: "tslong --num 42 ", - check: { - input: "tslong --num 42 ", - hints: "<msg> [options]", - markup: "VVVVVVVVVVVVVVVV" - } - }, - { - setup: "tslong --num 42 --se", - check: { - input: "tslong --num 42 --se", - hints: "l <msg> [options]", - markup: "VVVVVVVVVVVVVVVVIIII" - } - }, - { - setup: "tslong --num 42 --se<TAB>", - check: { - input: "tslong --num 42 --sel ", - hints: "space <msg> [options]", - markup: "VVVVVVVVVVVVVVVVIIIIIV" - } - }, - { - setup: "tslong --num 42 --se<TAB><TAB>", - check: { - input: "tslong --num 42 --sel space ", - hints: "<msg> [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVV" - } - }, - { - setup: "tslong --num 42 --sel ", - check: { - input: "tslong --num 42 --sel ", - hints: "space <msg> [options]", - markup: "VVVVVVVVVVVVVVVVIIIIIV" - } - }, - { - setup: "tslong --num 42 --sel space ", - check: { - input: "tslong --num 42 --sel space ", - hints: "<msg> [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVV" - } - } - ]); -}; - -exports.testNoTab = function (options) { - return helpers.audit(options, [ - { - setup: "tss<TAB>", - check: { - input: "tss ", - markup: "VVVV", - hints: "" - } - }, - { - setup: "tss<TAB><TAB>", - check: { - input: "tss ", - markup: "VVVV", - hints: "" - } - }, - { - setup: "xxxx", - check: { - input: "xxxx", - markup: "EEEE", - hints: "" - } - }, - { - name: "<TAB>", - setup: function () { - // Doing it this way avoids clearing the input buffer - return helpers.pressTab(options); - }, - check: { - input: "xxxx", - markup: "EEEE", - hints: "" - } - } - ]); -}; - -exports.testOutstanding = function (options) { - // See bug 779800 - /* - return helpers.audit(options, [ - { - setup: 'tsg --txt1 ddd ', - check: { - input: 'tsg --txt1 ddd ', - hints: 'aaa [options]', - markup: 'VVVVVVVVVVVVVVV' - } - }, - ]); - */ -}; - -exports.testCompleteIntoOptional = function (options) { - // From bug 779816 - return helpers.audit(options, [ - { - setup: "tso ", - check: { - typed: "tso ", - hints: "[text]", - markup: "VVVV", - status: "VALID" - } - }, - { - setup: "tso<TAB>", - check: { - typed: "tso ", - hints: "[text]", - markup: "VVVV", - status: "VALID" - } - } - ]); -}; - -exports.testSpaceComplete = function (options) { - return helpers.audit(options, [ - { - setup: "tslong --sel2 wit", - check: { - input: "tslong --sel2 wit", - hints: "h space <msg> [options]", - markup: "VVVVVVVIIIIIIVIII", - cursor: 17, - current: "sel2", - status: "ERROR", - tooltipState: "true:importantFieldFlag", - args: { - command: { name: "tslong" }, - msg: { status: "INCOMPLETE" }, - num: { status: "VALID" }, - sel: { status: "VALID" }, - bool: { value: false, status: "VALID" }, - num2: { status: "VALID" }, - bool2: { value: false, status: "VALID" }, - sel2: { arg: " --sel2 wit", status: "INCOMPLETE" } - } - } - }, - { - setup: "tslong --sel2 wit<TAB>", - check: { - input: "tslong --sel2 'with space' ", - hints: "<msg> [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVV", - cursor: 27, - current: "sel2", - status: "ERROR", - tooltipState: "true:importantFieldFlag", - args: { - command: { name: "tslong" }, - msg: { status: "INCOMPLETE" }, - num: { status: "VALID" }, - sel: { status: "VALID" }, - bool: { value: false, status: "VALID" }, - num2: { status: "VALID" }, - bool2: { value: false, status: "VALID" }, - sel2: { - value: "with space", - arg: " --sel2 'with space' ", - status: "VALID" - } - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_context.js +++ /dev/null @@ -1,239 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_context.js"); -} - -// var helpers = require('./helpers'); - -exports.testBaseline = function (options) { - return helpers.audit(options, [ - // These 3 establish a baseline for comparison when we have used the - // context command - { - setup: "ext", - check: { - input: "ext", - hints: " -> context", - markup: "III", - message: "", - predictions: [ "context", "tsn ext", "tsn exte", "tsn exten", "tsn extend" ], - unassigned: [ ], - } - }, - { - setup: "ext test", - check: { - input: "ext test", - hints: "", - markup: "IIIVEEEE", - status: "ERROR", - message: "Too many arguments", - unassigned: [ " test" ], - } - }, - { - setup: "tsn", - check: { - input: "tsn", - hints: " deep down nested cmd", - markup: "III", - cursor: 3, - current: "__command", - status: "ERROR", - predictionsContains: [ "tsn deep down nested cmd", "tsn ext", "tsn exte" ], - args: { - command: { name: "tsn" }, - } - } - } - ]); -}; - -exports.testContext = function (options) { - return helpers.audit(options, [ - // Use the 'tsn' context - { - setup: "context tsn", - check: { - input: "context tsn", - hints: " deep down nested cmd", - markup: "VVVVVVVVVVV", - message: "", - predictionsContains: [ "tsn deep down nested cmd", "tsn ext", "tsn exte" ], - args: { - command: { name: "context" }, - prefix: { - value: options.requisition.system.commands.get("tsn"), - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Using tsn as a command prefix" - } - }, - // For comparison with earlier - { - setup: "ext", - check: { - input: "ext", - hints: " <text>", - markup: "VVV", - predictions: [ "tsn ext", "tsn exte", "tsn exten", "tsn extend" ], - args: { - command: { name: "tsn ext" }, - text: { - value: undefined, - arg: "", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "ext test", - check: { - input: "ext test", - hints: "", - markup: "VVVVVVVV", - args: { - command: { name: "tsn ext" }, - text: { - value: "test", - arg: " test", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsnExt text=test" - } - }, - { - setup: "tsn", - check: { - input: "tsn", - hints: " deep down nested cmd", - markup: "III", - message: "", - predictionsContains: [ "tsn deep down nested cmd", "tsn ext", "tsn exte" ], - args: { - command: { name: "tsn" }, - } - } - }, - // Does it actually work? - { - setup: "tsb true", - check: { - input: "tsb true", - hints: "", - markup: "VVVVVVVV", - options: [ "true" ], - message: "", - predictions: [ "true" ], - unassigned: [ ], - args: { - command: { name: "tsb" }, - toggle: { value: true, arg: " true", status: "VALID", message: "" } - } - } - }, - { - // Bug 866710 - GCLI should allow argument merging for non-string parameters - setup: "context tsn ext", - skip: true - }, - { - setup: 'context "tsn ext"', - check: { - input: 'context "tsn ext"', - hints: "", - markup: "VVVVVVVVVVVVVVVVV", - message: "", - predictions: [ "tsn ext", "tsn exte", "tsn exten", "tsn extend" ], - unassigned: [ ], - args: { - command: { name: "context" }, - prefix: { - value: options.requisition.system.commands.get("tsn ext"), - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Can't use 'tsn ext' as a prefix because it is not a parent command.", - error: true - } - }, - /* - { - setup: 'context "tsn deep"', - check: { - input: 'context "tsn deep"', - hints: '', - markup: 'VVVVVVVVVVVVVVVVVV', - status: 'ERROR', - message: '', - predictions: [ 'tsn deep' ], - unassigned: [ ], - args: { - command: { name: 'context' }, - prefix: { - value: options.requisition.system.commands.get('tsn deep'), - status: 'VALID', - message: '' - } - } - }, - exec: { - output: '' - } - }, - */ - { - setup: "context", - check: { - input: "context", - hints: " [prefix]", - markup: "VVVVVVV", - status: "VALID", - unassigned: [ ], - args: { - command: { name: "context" }, - prefix: { value: undefined, arg: "", status: "VALID", message: "" }, - } - }, - exec: { - output: "Command prefix is unset", - type: "string", - error: false - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_date.js +++ /dev/null @@ -1,358 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_date.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -var Status = require("gcli/types/types").Status; - -exports.testParse = function (options) { - var date = options.requisition.system.types.createType("date"); - return date.parseString("now").then(function (conversion) { - // Date comparison - these 2 dates may not be the same, but how close is - // close enough? If this test takes more than 30secs to run the it will - // probably time out, so we'll assume that these 2 values must be within - // 1 min of each other - var gap = new Date().getTime() - conversion.value.getTime(); - assert.ok(gap < 60000, "now is less than a minute away"); - - assert.is(conversion.getStatus(), Status.VALID, "now parse"); - }); -}; - -exports.testMaxMin = function (options) { - var max = new Date(); - var min = new Date(); - var types = options.requisition.system.types; - var date = types.createType({ name: "date", max: max, min: min }); - assert.is(date.getMax(), max, "max setup"); - - var incremented = date.nudge(min, 1); - assert.is(incremented, max, "incremented"); -}; - -exports.testIncrement = function (options) { - var date = options.requisition.system.types.createType("date"); - return date.parseString("now").then(function (conversion) { - var plusOne = date.nudge(conversion.value, 1); - var minusOne = date.nudge(plusOne, -1); - - // See comments in testParse - var gap = new Date().getTime() - minusOne.getTime(); - assert.ok(gap < 60000, "now is less than a minute away"); - }); -}; - -exports.testInput = function (options) { - return helpers.audit(options, [ - { - setup: "tsdate 2001-01-01 1980-01-03", - check: { - input: "tsdate 2001-01-01 1980-01-03", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - message: "", - args: { - command: { name: "tsdate" }, - d1: { - value: function (d1) { - assert.is(d1.getFullYear(), 2001, "d1 year"); - assert.is(d1.getMonth(), 0, "d1 month"); - assert.is(d1.getDate(), 1, "d1 date"); - assert.is(d1.getHours(), 0, "d1 hours"); - assert.is(d1.getMinutes(), 0, "d1 minutes"); - assert.is(d1.getSeconds(), 0, "d1 seconds"); - assert.is(d1.getMilliseconds(), 0, "d1 millis"); - }, - arg: " 2001-01-01", - status: "VALID", - message: "" - }, - d2: { - value: function (d2) { - assert.is(d2.getFullYear(), 1980, "d2 year"); - assert.is(d2.getMonth(), 0, "d2 month"); - assert.is(d2.getDate(), 3, "d2 date"); - assert.is(d2.getHours(), 0, "d2 hours"); - assert.is(d2.getMinutes(), 0, "d2 minutes"); - assert.is(d2.getSeconds(), 0, "d2 seconds"); - assert.is(d2.getMilliseconds(), 0, "d2 millis"); - }, - arg: " 1980-01-03", - status: "VALID", - message: "" - }, - } - }, - exec: { - output: [ /^Exec: tsdate/, /2001/, /1980/ ], - type: "testCommandOutput", - error: false - } - }, - { - setup: "tsdate 2001/01/01 1980/01/03", - check: { - input: "tsdate 2001/01/01 1980/01/03", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - message: "", - args: { - command: { name: "tsdate" }, - d1: { - value: function (d1) { - assert.is(d1.getFullYear(), 2001, "d1 year"); - assert.is(d1.getMonth(), 0, "d1 month"); - assert.is(d1.getDate(), 1, "d1 date"); - assert.is(d1.getHours(), 0, "d1 hours"); - assert.is(d1.getMinutes(), 0, "d1 minutes"); - assert.is(d1.getSeconds(), 0, "d1 seconds"); - assert.is(d1.getMilliseconds(), 0, "d1 millis"); - }, - arg: " 2001/01/01", - status: "VALID", - message: "" - }, - d2: { - value: function (d2) { - assert.is(d2.getFullYear(), 1980, "d2 year"); - assert.is(d2.getMonth(), 0, "d2 month"); - assert.is(d2.getDate(), 3, "d2 date"); - assert.is(d2.getHours(), 0, "d2 hours"); - assert.is(d2.getMinutes(), 0, "d2 minutes"); - assert.is(d2.getSeconds(), 0, "d2 seconds"); - assert.is(d2.getMilliseconds(), 0, "d2 millis"); - }, - arg: " 1980/01/03", - status: "VALID", - message: "" - }, - } - }, - exec: { - output: [ /^Exec: tsdate/, /2001/, /1980/ ], - type: "testCommandOutput", - error: false - } - }, - { - setup: "tsdate now today", - check: { - input: "tsdate now today", - hints: "", - markup: "VVVVVVVVVVVVVVVV", - status: "VALID", - message: "", - args: { - command: { name: "tsdate" }, - d1: { - value: function (d1) { - // How long should we allow between d1 and now? Mochitest will - // time out after 30 secs, so that seems like a decent upper - // limit, although 30 ms should probably do it. I don't think - // reducing the limit from 30 secs will find any extra bugs - assert.ok(d1.getTime() - new Date().getTime() < 30 * 1000, - "d1 time"); - }, - arg: " now", - status: "VALID", - message: "" - }, - d2: { - value: function (d2) { - // See comment for d1 above - assert.ok(d2.getTime() - new Date().getTime() < 30 * 1000, - "d2 time"); - }, - arg: " today", - status: "VALID", - message: "" - }, - } - }, - exec: { - output: [ /^Exec: tsdate/, new Date().getFullYear() ], - type: "testCommandOutput", - error: false - } - }, - { - setup: "tsdate yesterday tomorrow", - check: { - input: "tsdate yesterday tomorrow", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - message: "", - args: { - command: { name: "tsdate" }, - d1: { - value: function (d1) { - var compare = new Date().getTime() - (24 * 60 * 60 * 1000); - // See comment for d1 in the test for 'tsdate now today' - assert.ok(d1.getTime() - compare < 30 * 1000, - "d1 time"); - }, - arg: " yesterday", - status: "VALID", - message: "" - }, - d2: { - value: function (d2) { - var compare = new Date().getTime() + (24 * 60 * 60 * 1000); - // See comment for d1 in the test for 'tsdate now today' - assert.ok(d2.getTime() - compare < 30 * 1000, - "d2 time"); - }, - arg: " tomorrow", - status: "VALID", - message: "" - }, - } - }, - exec: { - output: [ /^Exec: tsdate/, new Date().getFullYear() ], - type: "testCommandOutput", - error: false - } - } - ]); -}; - -exports.testIncrDecr = function (options) { - return helpers.audit(options, [ - { - // createRequisitionAutomator doesn't fake UP/DOWN well enough - skipRemainingIf: options.isNode, - setup: "tsdate 2001-01-01<UP>", - check: { - input: "tsdate 2001-01-02", - hints: " <d2>", - markup: "VVVVVVVVVVVVVVVVV", - status: "ERROR", - message: "", - args: { - command: { name: "tsdate" }, - d1: { - value: function (d1) { - assert.is(d1.getFullYear(), 2001, "d1 year"); - assert.is(d1.getMonth(), 0, "d1 month"); - assert.is(d1.getDate(), 2, "d1 date"); - assert.is(d1.getHours(), 0, "d1 hours"); - assert.is(d1.getMinutes(), 0, "d1 minutes"); - assert.is(d1.getSeconds(), 0, "d1 seconds"); - assert.is(d1.getMilliseconds(), 0, "d1 millis"); - }, - arg: " 2001-01-02", - status: "VALID", - message: "" - }, - d2: { - value: undefined, - status: "INCOMPLETE" - }, - } - } - }, - { - // Check wrapping on decrement - setup: "tsdate 2001-02-01<DOWN>", - check: { - input: "tsdate 2001-01-31", - hints: " <d2>", - markup: "VVVVVVVVVVVVVVVVV", - status: "ERROR", - message: "", - args: { - command: { name: "tsdate" }, - d1: { - value: function (d1) { - assert.is(d1.getFullYear(), 2001, "d1 year"); - assert.is(d1.getMonth(), 0, "d1 month"); - assert.is(d1.getDate(), 31, "d1 date"); - assert.is(d1.getHours(), 0, "d1 hours"); - assert.is(d1.getMinutes(), 0, "d1 minutes"); - assert.is(d1.getSeconds(), 0, "d1 seconds"); - assert.is(d1.getMilliseconds(), 0, "d1 millis"); - }, - arg: " 2001-01-31", - status: "VALID", - message: "" - }, - d2: { - value: undefined, - status: "INCOMPLETE" - }, - } - } - }, - { - // Check 'max' value capping on increment - setup: 'tsdate 2001-02-01 "27 feb 2000"<UP>', - check: { - input: 'tsdate 2001-02-01 "2000-02-28"', - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - message: "", - args: { - command: { name: "tsdate" }, - d1: { - value: function (d1) { - assert.is(d1.getFullYear(), 2001, "d1 year"); - assert.is(d1.getMonth(), 1, "d1 month"); - assert.is(d1.getDate(), 1, "d1 date"); - assert.is(d1.getHours(), 0, "d1 hours"); - assert.is(d1.getMinutes(), 0, "d1 minutes"); - assert.is(d1.getSeconds(), 0, "d1 seconds"); - assert.is(d1.getMilliseconds(), 0, "d1 millis"); - }, - arg: " 2001-02-01", - status: "VALID", - message: "" - }, - d2: { - value: function (d2) { - assert.is(d2.getFullYear(), 2000, "d2 year"); - assert.is(d2.getMonth(), 1, "d2 month"); - assert.is(d2.getDate(), 28, "d2 date"); - assert.is(d2.getHours(), 0, "d2 hours"); - assert.is(d2.getMinutes(), 0, "d2 minutes"); - assert.is(d2.getSeconds(), 0, "d2 seconds"); - assert.is(d2.getMilliseconds(), 0, "d2 millis"); - }, - arg: ' "2000-02-28"', - status: "VALID", - message: "" - }, - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_exec.js +++ /dev/null @@ -1,656 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_exec.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -exports.testParamGroup = function (options) { - var tsg = options.requisition.system.commands.get("tsg"); - - assert.is(tsg.params[0].groupName, null, "tsg param 0 group null"); - assert.is(tsg.params[1].groupName, "First", "tsg param 1 group First"); - assert.is(tsg.params[2].groupName, "First", "tsg param 2 group First"); - assert.is(tsg.params[3].groupName, "Second", "tsg param 3 group Second"); - assert.is(tsg.params[4].groupName, "Second", "tsg param 4 group Second"); -}; - -exports.testWithHelpers = function (options) { - return helpers.audit(options, [ - { - setup: "tss", - check: { - input: "tss", - hints: "", - markup: "VVV", - cursor: 3, - current: "__command", - status: "VALID", - unassigned: [ ], - args: { - command: { name: "tss" }, - } - }, - exec: { - output: /^Exec: tss/, - } - }, - { - setup: "tsv option1 10", - check: { - input: "tsv option1 10", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "optionValue", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsv" }, - optionType: { - value: "string", - arg: " option1", - status: "VALID", - message: "" - }, - optionValue: { - arg: " 10", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsv optionType=option1 optionValue=10" - } - }, - { - setup: "tsv option2 10", - check: { - input: "tsv option2 10", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "optionValue", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsv" }, - optionType: { - value: "number", - arg: " option2", - status: "VALID", - message: "" - }, - optionValue: { - arg: " 10", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsv optionType=option2 optionValue=10" - } - }, - // Delegated remote types can't transfer value types so we only test for - // the value of optionValue when we're local - { - skipIf: options.isRemote, - setup: "tsv option1 10", - check: { - args: { optionValue: { value: "10" } } - }, - exec: { - output: "Exec: tsv optionType=option1 optionValue=10" - } - }, - { - skipIf: options.isRemote, - setup: "tsv option2 10", - check: { - args: { optionValue: { value: 10 } } - }, - exec: { - output: "Exec: tsv optionType=option2 optionValue=10" - } - } - ]); -}; - -exports.testExecText = function (options) { - return helpers.audit(options, [ - { - setup: "tsr fred", - check: { - input: "tsr fred", - hints: "", - markup: "VVVVVVVV", - cursor: 8, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: "fred", - arg: " fred", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsr text=fred" - } - }, - { - setup: "tsr fred bloggs", - check: { - input: "tsr fred bloggs", - hints: "", - markup: "VVVVVVVVVVVVVVV", - cursor: 15, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: "fred bloggs", - arg: " fred bloggs", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsr text=fred\\ bloggs" - } - }, - { - setup: 'tsr "fred bloggs"', - check: { - input: 'tsr "fred bloggs"', - hints: "", - markup: "VVVVVVVVVVVVVVVVV", - cursor: 17, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: "fred bloggs", - arg: ' "fred bloggs"', - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsr text=fred\\ bloggs" - } - }, - { - setup: 'tsr "fred bloggs', - check: { - input: 'tsr "fred bloggs', - hints: "", - markup: "VVVVVVVVVVVVVVVV", - cursor: 16, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsr" }, - text: { - value: "fred bloggs", - arg: ' "fred bloggs', - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsr text=fred\\ bloggs" - } - } - ]); -}; - -exports.testExecBoolean = function (options) { - return helpers.audit(options, [ - { - setup: "tsb", - check: { - input: "tsb", - hints: " [toggle]", - markup: "VVV", - cursor: 3, - current: "__command", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsb" }, - toggle: { - value: false, - arg: "", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsb toggle=false" - } - }, - { - setup: "tsb --toggle", - check: { - input: "tsb --toggle", - hints: "", - markup: "VVVVVVVVVVVV", - cursor: 12, - current: "toggle", - status: "VALID", - predictions: [ ], - unassigned: [ ], - outputState: "false:default", - args: { - command: { name: "tsb" }, - toggle: { - value: true, - arg: " --toggle", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsb toggle=true" - } - } - ]); -}; - -exports.testExecNumber = function (options) { - return helpers.audit(options, [ - { - setup: "tsu 10", - check: { - input: "tsu 10", - hints: "", - markup: "VVVVVV", - cursor: 6, - current: "num", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsu" }, - num: { value: 10, arg: " 10", status: "VALID", message: "" } - } - }, - exec: { - output: "Exec: tsu num=10" - } - }, - { - setup: "tsu --num 10", - check: { - input: "tsu --num 10", - hints: "", - markup: "VVVVVVVVVVVV", - cursor: 12, - current: "num", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsu" }, - num: { value: 10, arg: " --num 10", status: "VALID", message: "" } - } - }, - exec: { - output: "Exec: tsu num=10" - } - } - ]); -}; - -exports.testExecScript = function (options) { - return helpers.audit(options, [ - { - // Bug 704829 - Enable GCLI Javascript parameters - // The answer to this should be 2 - setup: "tsj { 1 + 1 }", - check: { - input: "tsj { 1 + 1 }", - hints: "", - markup: "VVVVVVVVVVVVV", - cursor: 13, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsj" }, - javascript: { - arg: " { 1 + 1 }", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Exec: tsj javascript=1 + 1" - } - } - ]); -}; - -exports.testExecNode = function (options) { - return helpers.audit(options, [ - { - skipIf: options.isRemote, - setup: "tse :root", - check: { - input: "tse :root", - hints: " [options]", - markup: "VVVVVVVVV", - cursor: 9, - current: "node", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tse" }, - node: { - arg: " :root", - status: "VALID", - message: "" - }, - nodes: { - arg: "", - status: "VALID", - message: "" - }, - nodes2: { - arg: "", - status: "VALID", - message: "" - } - } - }, - exec: { - output: /^Exec: tse/ - }, - post: function (output) { - assert.is(output.data.args.node, ":root", "node should be :root"); - assert.is(output.data.args.nodes, "Error", "nodes should be Error"); - assert.is(output.data.args.nodes2, "Error", "nodes2 should be Error"); - } - } - ]); -}; - -exports.testExecSubCommand = function (options) { - return helpers.audit(options, [ - { - setup: "tsn dif fred", - check: { - input: "tsn dif fred", - hints: "", - markup: "VVVVVVVVVVVV", - cursor: 12, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsn dif" }, - text: { value: "fred", arg: " fred", status: "VALID", message: "" } - } - }, - exec: { - output: "Exec: tsnDif text=fred" - } - }, - { - setup: "tsn exten fred", - check: { - input: "tsn exten fred", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsn exten" }, - text: { value: "fred", arg: " fred", status: "VALID", message: "" }, - } - }, - exec: { - output: "Exec: tsnExten text=fred" - } - }, - { - setup: "tsn extend fred", - check: { - input: "tsn extend fred", - hints: "", - markup: "VVVVVVVVVVVVVVV", - cursor: 15, - current: "text", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsn extend" }, - text: { value: "fred", arg: " fred", status: "VALID", message: "" }, - } - }, - exec: { - output: "Exec: tsnExtend text=fred" - } - } - ]); -}; - -exports.testExecArray = function (options) { - return helpers.audit(options, [ - { - setup: "tselarr 1", - check: { - input: "tselarr 1", - hints: "", - markup: "VVVVVVVVV", - cursor: 9, - current: "num", - status: "VALID", - predictions: ["1"], - unassigned: [ ], - outputState: "false:default", - args: { - command: { name: "tselarr" }, - num: { value: "1", arg: " 1", status: "VALID", message: "" }, - arr: { /* value:,*/ arg: "{}", status: "VALID", message: "" }, - } - }, - exec: { - output: "Exec: tselarr num=1 arr=" - } - }, - { - setup: "tselarr 1 a", - check: { - input: "tselarr 1 a", - hints: "", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "arr", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tselarr" }, - num: { value: "1", arg: " 1", status: "VALID", message: "" }, - arr: { /* value:a,*/ arg: "{ a}", status: "VALID", message: "" }, - } - }, - exec: { - output: "Exec: tselarr num=1 arr=a" - } - }, - { - setup: "tselarr 1 a b", - check: { - input: "tselarr 1 a b", - hints: "", - markup: "VVVVVVVVVVVVV", - cursor: 13, - current: "arr", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tselarr" }, - num: { value: "1", arg: " 1", status: "VALID", message: "" }, - arr: { /* value:a,b,*/ arg: "{ a, b}", status: "VALID", message: "" }, - } - }, - exec: { - output: "Exec: tselarr num=1 arr=a b" - } - } - ]); -}; - -exports.testExecMultiple = function (options) { - return helpers.audit(options, [ - { - setup: "tsm a 10 10", - check: { - input: "tsm a 10 10", - hints: "", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "num", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tsm" }, - abc: { value: "a", arg: " a", status: "VALID", message: "" }, - txt: { value: "10", arg: " 10", status: "VALID", message: "" }, - num: { value: 10, arg: " 10", status: "VALID", message: "" }, - } - }, - exec: { - output: "Exec: tsm abc=a txt=10 num=10" - } - } - ]); -}; - -exports.testExecDefaults = function (options) { - return helpers.audit(options, [ - { - // Bug 707009 - GCLI doesn't always fill in default parameters properly - setup: "tsg aaa", - check: { - input: "tsg aaa", - hints: " [options]", - markup: "VVVVVVV", - cursor: 7, - current: "solo", - status: "VALID", - predictions: ["aaa"], - unassigned: [ ], - args: { - command: { name: "tsg" }, - solo: { value: "aaa", arg: " aaa", status: "VALID", message: "" }, - txt1: { value: undefined, arg: "", status: "VALID", message: "" }, - bool: { value: false, arg: "", status: "VALID", message: "" }, - txt2: { value: undefined, arg: "", status: "VALID", message: "" }, - num: { value: undefined, arg: "", status: "VALID", message: "" }, - } - }, - exec: { - output: "Exec: tsg solo=aaa txt1= bool=false txt2=d num=42" - } - } - ]); -}; - -exports.testNested = function (options) { - var commands = options.requisition.system.commands; - commands.add({ - name: "nestorama", - exec: function (args, context) { - return context.updateExec("tsb").then(function (tsbOutput) { - return context.updateExec("tsu 6").then(function (tsuOutput) { - return JSON.stringify({ - tsb: tsbOutput.data, - tsu: tsuOutput.data - }); - }); - }); - } - }); - - return helpers.audit(options, [ - { - setup: "nestorama", - exec: { - output: - "{" + - '"tsb":{' + - '"name":"tsb",' + - '"args":{"toggle":"false"}' + - "}," + - '"tsu":{' + - '"name":"tsu",' + - '"args":{"num":"6"}' + - "}" + - "}" - }, - post: function () { - commands.remove("nestorama"); - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_fail.js +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_fail.js"); -} - -// var helpers = require('./helpers'); - -exports.testBasic = function (options) { - return helpers.audit(options, [ - { - setup: "tsfail reject", - exec: { - output: "rejected promise", - type: "error", - error: true - } - }, - { - setup: "tsfail rejecttyped", - exec: { - output: "54", - type: "number", - error: true - } - }, - { - setup: "tsfail throwerror", - exec: { - output: /thrown error$/, - type: "error", - error: true - } - }, - { - setup: "tsfail throwstring", - exec: { - output: "thrown string", - type: "error", - error: true - } - }, - { - setup: "tsfail noerror", - exec: { - output: "no error", - type: "string", - error: false - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_file.js +++ /dev/null @@ -1,821 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_file.js"); -} - -// var helpers = require('./helpers'); - -var local = false; - -exports.testBasic = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: options.isFirefox, // No file implementation in Firefox - setup: "tsfile open /", - check: { - input: "tsfile open /", - hints: "", - markup: "VVVVVVVVVVVVI", - cursor: 13, - current: "p1", - status: "ERROR", - message: "'/' is not a file", - args: { - command: { name: "tsfile open" }, - p1: { - value: undefined, - arg: " /", - status: "INCOMPLETE", - message: "'/' is not a file" - } - } - } - }, - { - setup: "tsfile open /zxcv", - check: { - input: "tsfile open /zxcv", - // hints: ' -> /etc/', - markup: "VVVVVVVVVVVVIIIII", - cursor: 17, - current: "p1", - status: "ERROR", - message: "'/zxcv' doesn't exist", - args: { - command: { name: "tsfile open" }, - p1: { - value: undefined, - arg: " /zxcv", - status: "INCOMPLETE", - message: "'/zxcv' doesn't exist" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile open /mach_kernel", - check: { - input: "tsfile open /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVV", - cursor: 24, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile open" }, - p1: { - value: "/mach_kernel", - arg: " /mach_kernel", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tsfile saveas /", - check: { - input: "tsfile saveas /", - hints: "", - markup: "VVVVVVVVVVVVVVI", - cursor: 15, - current: "p1", - status: "ERROR", - message: "'/' already exists", - args: { - command: { name: "tsfile saveas" }, - p1: { - value: undefined, - arg: " /", - status: "INCOMPLETE", - message: "'/' already exists" - } - } - } - }, - { - setup: "tsfile saveas /zxcv", - check: { - input: "tsfile saveas /zxcv", - // hints: ' -> /etc/', - markup: "VVVVVVVVVVVVVVVVVVV", - cursor: 19, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile saveas" }, - p1: { - value: "/zxcv", - arg: " /zxcv", - status: "VALID", - message: "" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile saveas /mach_kernel", - check: { - input: "tsfile saveas /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVVIIIIIIIIIIII", - cursor: 26, - current: "p1", - status: "ERROR", - message: "'/mach_kernel' already exists", - args: { - command: { name: "tsfile saveas" }, - p1: { - value: undefined, - arg: " /mach_kernel", - status: "INCOMPLETE", - message: "'/mach_kernel' already exists" - } - } - } - }, - { - setup: "tsfile save /", - check: { - input: "tsfile save /", - hints: "", - markup: "VVVVVVVVVVVVI", - cursor: 13, - current: "p1", - status: "ERROR", - message: "'/' is not a file", - args: { - command: { name: "tsfile save" }, - p1: { - value: undefined, - arg: " /", - status: "INCOMPLETE", - message: "'/' is not a file" - } - } - } - }, - { - setup: "tsfile save /zxcv", - check: { - input: "tsfile save /zxcv", - // hints: ' -> /etc/', - markup: "VVVVVVVVVVVVVVVVV", - cursor: 17, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile save" }, - p1: { - value: "/zxcv", - arg: " /zxcv", - status: "VALID", - message: "" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile save /mach_kernel", - check: { - input: "tsfile save /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVV", - cursor: 24, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile save" }, - p1: { - value: "/mach_kernel", - arg: " /mach_kernel", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tsfile cd /", - check: { - input: "tsfile cd /", - hints: "", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile cd" }, - p1: { - value: "/", - arg: " /", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tsfile cd /zxcv", - check: { - input: "tsfile cd /zxcv", - // hints: ' -> /dev/', - markup: "VVVVVVVVVVIIIII", - cursor: 15, - current: "p1", - status: "ERROR", - message: "'/zxcv' doesn't exist", - args: { - command: { name: "tsfile cd" }, - p1: { - value: undefined, - arg: " /zxcv", - status: "INCOMPLETE", - message: "'/zxcv' doesn't exist" - } - } - } - }, - { - skipIf: true || !local, - setup: "tsfile cd /etc/passwd", - check: { - input: "tsfile cd /etc/passwd", - hints: " -> /etc/pam.d/", - markup: "VVVVVVVVVVIIIIIIIIIII", - cursor: 21, - current: "p1", - status: "ERROR", - message: "'/etc/passwd' is not a directory", - args: { - command: { name: "tsfile cd" }, - p1: { - value: undefined, - arg: " /etc/passwd", - status: "INCOMPLETE", - message: "'/etc/passwd' is not a directory" - } - } - } - }, - { - setup: "tsfile mkdir /", - check: { - input: "tsfile mkdir /", - hints: "", - markup: "VVVVVVVVVVVVVI", - cursor: 14, - current: "p1", - status: "ERROR", - message: "" / " already exists", - args: { - command: { name: "tsfile mkdir" }, - p1: { - value: undefined, - arg: " /", - status: "INCOMPLETE", - message: "'/' already exists" - } - } - } - }, - { - setup: "tsfile mkdir /zxcv", - check: { - input: "tsfile mkdir /zxcv", - // hints: ' -> /dev/', - markup: "VVVVVVVVVVVVVVVVVV", - cursor: 18, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile mkdir" }, - p1: { - value: "/zxcv", - arg: " /zxcv", - status: "VALID", - message: "" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile mkdir /mach_kernel", - check: { - input: "tsfile mkdir /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVIIIIIIIIIIII", - cursor: 25, - current: "p1", - status: "ERROR", - message: "'/mach_kernel' already exists", - args: { - command: { name: "tsfile mkdir" }, - p1: { - value: undefined, - arg: " /mach_kernel", - status: "INCOMPLETE", - message: "'/mach_kernel' already exists" - } - } - } - }, - { - setup: "tsfile rm /", - check: { - input: "tsfile rm /", - hints: "", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile rm" }, - p1: { - value: "/", - arg: " /", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tsfile rm /zxcv", - check: { - input: "tsfile rm /zxcv", - // hints: ' -> /etc/', - markup: "VVVVVVVVVVIIIII", - cursor: 15, - current: "p1", - status: "ERROR", - message: "'/zxcv' doesn't exist", - args: { - command: { name: "tsfile rm" }, - p1: { - value: undefined, - arg: " /zxcv", - status: "INCOMPLETE", - message: "'/zxcv' doesn't exist" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile rm /mach_kernel", - check: { - input: "tsfile rm /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVV", - cursor: 22, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile rm" }, - p1: { - value: "/mach_kernel", - arg: " /mach_kernel", - status: "VALID", - message: "" - } - } - } - } - ]); -}; - -exports.testFirefoxBasic = function (options) { - return helpers.audit(options, [ - { - // These tests are just like the ones above tailored for running in - // Firefox - skipRemainingIf: true, - // skipRemainingIf: !options.isFirefox, - skipIf: true, - setup: "tsfile open /", - check: { - input: "tsfile open /", - hints: "", - markup: "VVVVVVVVVVVVI", - cursor: 13, - current: "p1", - status: "ERROR", - message: "'/' is not a file", - args: { - command: { name: "tsfile open" }, - p1: { - value: undefined, - arg: " /", - status: "INCOMPLETE", - message: "'/' is not a file" - } - } - } - }, - { - skipIf: true, - setup: "tsfile open /zxcv", - check: { - input: "tsfile open /zxcv", - // hints: ' -> /etc/', - markup: "VVVVVVVVVVVVIIIII", - cursor: 17, - current: "p1", - status: "ERROR", - message: "'/zxcv' doesn't exist", - args: { - command: { name: "tsfile open" }, - p1: { - value: undefined, - arg: " /zxcv", - status: "INCOMPLETE", - message: "'/zxcv' doesn't exist" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile open /mach_kernel", - check: { - input: "tsfile open /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVV", - cursor: 24, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile open" }, - p1: { - value: "/mach_kernel", - arg: " /mach_kernel", - status: "VALID", - message: "" - } - } - } - }, - { - skipIf: true, - setup: "tsfile saveas /", - check: { - input: "tsfile saveas /", - hints: "", - markup: "VVVVVVVVVVVVVVI", - cursor: 15, - current: "p1", - status: "ERROR", - message: "'/' already exists", - args: { - command: { name: "tsfile saveas" }, - p1: { - value: undefined, - arg: " /", - status: "INCOMPLETE", - message: "'/' already exists" - } - } - } - }, - { - skipIf: true, - setup: "tsfile saveas /zxcv", - check: { - input: "tsfile saveas /zxcv", - // hints: ' -> /etc/', - markup: "VVVVVVVVVVVVVVVVVVV", - cursor: 19, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile saveas" }, - p1: { - value: "/zxcv", - arg: " /zxcv", - status: "VALID", - message: "" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile saveas /mach_kernel", - check: { - input: "tsfile saveas /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVVIIIIIIIIIIII", - cursor: 26, - current: "p1", - status: "ERROR", - message: "'/mach_kernel' already exists", - args: { - command: { name: "tsfile saveas" }, - p1: { - value: undefined, - arg: " /mach_kernel", - status: "INCOMPLETE", - message: "'/mach_kernel' already exists" - } - } - } - }, - { - skipIf: true, - setup: "tsfile save /", - check: { - input: "tsfile save /", - hints: "", - markup: "VVVVVVVVVVVVI", - cursor: 13, - current: "p1", - status: "ERROR", - message: "'/' is not a file", - args: { - command: { name: "tsfile save" }, - p1: { - value: undefined, - arg: " /", - status: "INCOMPLETE", - message: "'/' is not a file" - } - } - } - }, - { - skipIf: true, - setup: "tsfile save /zxcv", - check: { - input: "tsfile save /zxcv", - // hints: ' -> /etc/', - markup: "VVVVVVVVVVVVVVVVV", - cursor: 17, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile save" }, - p1: { - value: "/zxcv", - arg: " /zxcv", - status: "VALID", - message: "" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile save /mach_kernel", - check: { - input: "tsfile save /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVV", - cursor: 24, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile save" }, - p1: { - value: "/mach_kernel", - arg: " /mach_kernel", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tsfile cd /", - check: { - input: "tsfile cd /", - hints: "", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile cd" }, - p1: { - value: "/", - arg: " /", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tsfile cd /zxcv", - check: { - input: "tsfile cd /zxcv", - // hints: ' -> /dev/', - // markup: 'VVVVVVVVVVIIIII', - cursor: 15, - current: "p1", - // status: 'ERROR', - message: "'/zxcv' doesn't exist", - args: { - command: { name: "tsfile cd" }, - p1: { - value: undefined, - arg: " /zxcv", - // status: 'INCOMPLETE', - message: "'/zxcv' doesn't exist" - } - } - } - }, - { - skipIf: true || !local, - setup: "tsfile cd /etc/passwd", - check: { - input: "tsfile cd /etc/passwd", - hints: " -> /etc/pam.d/", - markup: "VVVVVVVVVVIIIIIIIIIII", - cursor: 21, - current: "p1", - status: "ERROR", - message: "'/etc/passwd' is not a directory", - args: { - command: { name: "tsfile cd" }, - p1: { - value: undefined, - arg: " /etc/passwd", - status: "INCOMPLETE", - message: "'/etc/passwd' is not a directory" - } - } - } - }, - { - setup: "tsfile mkdir /", - check: { - input: "tsfile mkdir /", - hints: "", - markup: "VVVVVVVVVVVVVI", - cursor: 14, - current: "p1", - status: "ERROR", - message: "" / " already exists", - args: { - command: { name: "tsfile mkdir" }, - p1: { - value: undefined, - arg: " /", - status: "INCOMPLETE", - message: "'/' already exists" - } - } - } - }, - { - setup: "tsfile mkdir /zxcv", - check: { - input: "tsfile mkdir /zxcv", - // hints: ' -> /dev/', - markup: "VVVVVVVVVVVVVVVVVV", - cursor: 18, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile mkdir" }, - p1: { - value: "/zxcv", - arg: " /zxcv", - status: "VALID", - message: "" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile mkdir /mach_kernel", - check: { - input: "tsfile mkdir /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVIIIIIIIIIIII", - cursor: 25, - current: "p1", - status: "ERROR", - message: "'/mach_kernel' already exists", - args: { - command: { name: "tsfile mkdir" }, - p1: { - value: undefined, - arg: " /mach_kernel", - status: "INCOMPLETE", - message: "'/mach_kernel' already exists" - } - } - } - }, - { - skipIf: true, - setup: "tsfile rm /", - check: { - input: "tsfile rm /", - hints: "", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile rm" }, - p1: { - value: "/", - arg: " /", - status: "VALID", - message: "" - } - } - } - }, - { - skipIf: true, - setup: "tsfile rm /zxcv", - check: { - input: "tsfile rm /zxcv", - // hints: ' -> /etc/', - markup: "VVVVVVVVVVIIIII", - cursor: 15, - current: "p1", - status: "ERROR", - message: "'/zxcv' doesn't exist", - args: { - command: { name: "tsfile rm" }, - p1: { - value: undefined, - arg: " /zxcv", - status: "INCOMPLETE", - message: "'/zxcv' doesn't exist" - } - } - } - }, - { - skipIf: !local, - setup: "tsfile rm /mach_kernel", - check: { - input: "tsfile rm /mach_kernel", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVV", - cursor: 22, - current: "p1", - status: "VALID", - message: "", - args: { - command: { name: "tsfile rm" }, - p1: { - value: "/mach_kernel", - arg: " /mach_kernel", - status: "VALID", - message: "" - } - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_fileparser.js +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_fileparser.js"); -} - -// var assert = require('../testharness/assert'); -var fileparser = require("gcli/util/fileparser"); - -var local = false; - -exports.testGetPredictor = function (options) { - if (!options.isNode || !local) { - assert.log("Skipping tests due to install differences."); - return; - } - - var opts = { filetype: "file", existing: "yes" }; - var predictor = fileparser.getPredictor("/usr/locl/bin/nmp", opts); - return predictor().then(function (replies) { - assert.is(replies[0].name, - "/usr/local/bin/npm", - "predict npm"); - }); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_filesystem.js +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_filesystem.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); -var filesystem = require("gcli/util/filesystem"); - -exports.testSplit = function (options) { - if (!options.isNode) { - return; - } - - helpers.arrayIs(filesystem.split("", "/"), - [ "." ], - "split <blank>"); - - helpers.arrayIs(filesystem.split("a", "/"), - [ "a" ], - "split a"); - - helpers.arrayIs(filesystem.split("a/b/c", "/"), - [ "a", "b", "c" ], - "split a/b/c"); - - helpers.arrayIs(filesystem.split("/a/b/c/", "/"), - [ "a", "b", "c" ], - "split a/b/c"); - - helpers.arrayIs(filesystem.split("/a/b///c/", "/"), - [ "a", "b", "c" ], - "split a/b/c"); -}; - -exports.testJoin = function (options) { - if (!options.isNode) { - return; - } - - assert.is(filesystem.join("usr", "local", "bin"), - "usr/local/bin", - "join to usr/local/bin"); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_focus.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_focus.js"); -} - -// var helpers = require('./helpers'); - -exports.testBasic = function (options) { - return helpers.audit(options, [ - { - name: "exec setup", - setup: function () { - // Just check that we've got focus, and everything is clear - helpers.focusInput(options); - return helpers.setInput(options, "echo hi"); - }, - check: { }, - exec: { } - }, - { - setup: "tsn deep", - check: { - input: "tsn deep", - hints: " down nested cmd", - markup: "IIIVIIII", - cursor: 8, - status: "ERROR", - outputState: "false:default", - tooltipState: "false:default" - } - }, - { - setup: "tsn deep<TAB>", - check: { - input: "tsn deep down nested cmd ", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVV", - cursor: 25, - status: "VALID", - outputState: "false:default", - tooltipState: "false:default" - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_history.js +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_history.js"); -} - -// var assert = require('../testharness/assert'); -var History = require("gcli/ui/history").History; - -exports.testSimpleHistory = function (options) { - var history = new History({}); - history.add("foo"); - history.add("bar"); - assert.is(history.backward(), "bar"); - assert.is(history.backward(), "foo"); - - // Adding to the history again moves us back to the start of the history. - history.add("quux"); - assert.is(history.backward(), "quux"); - assert.is(history.backward(), "bar"); - assert.is(history.backward(), "foo"); -}; - -exports.testBackwardsPastIndex = function (options) { - var history = new History({}); - history.add("foo"); - history.add("bar"); - assert.is(history.backward(), "bar"); - assert.is(history.backward(), "foo"); - - // Moving backwards past recorded history just keeps giving you the last - // item. - assert.is(history.backward(), "foo"); -}; - -exports.testForwardsPastIndex = function (options) { - var history = new History({}); - history.add("foo"); - history.add("bar"); - assert.is(history.backward(), "bar"); - assert.is(history.backward(), "foo"); - - // Going forward through the history again. - assert.is(history.forward(), "bar"); - - // 'Present' time. - assert.is(history.forward(), ""); - - // Going to the 'future' just keeps giving us the empty string. - assert.is(history.forward(), ""); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_incomplete.js +++ /dev/null @@ -1,439 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_incomplete.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -exports.testBasic = function (options) { - return helpers.audit(options, [ - { - setup: "tsu 2 extra", - check: { - args: { - num: { value: 2, type: "Argument" } - } - }, - post: function () { - var requisition = options.requisition; - - assert.is(requisition._unassigned.length, - 1, - "single unassigned: tsu 2 extra"); - assert.is(requisition._unassigned[0].param.type.isIncompleteName, - false, - "unassigned.isIncompleteName: tsu 2 extra"); - } - }, - { - setup: "tsu", - check: { - args: { - num: { value: undefined, type: "BlankArgument" } - } - } - }, - { - setup: "tsg", - check: { - args: { - solo: { type: "BlankArgument" }, - txt1: { type: "BlankArgument" }, - bool: { type: "BlankArgument" }, - txt2: { type: "BlankArgument" }, - num: { type: "BlankArgument" } - } - } - } - ]); -}; - -exports.testCompleted = function (options) { - return helpers.audit(options, [ - { - setup: "tsela<TAB>", - check: { - args: { - command: { name: "tselarr", type: "Argument" }, - num: { type: "BlankArgument" }, - arr: { type: "ArrayArgument" } - } - } - }, - { - setup: "tsn dif ", - check: { - input: "tsn dif ", - hints: "<text>", - markup: "VVVVVVVV", - cursor: 8, - status: "ERROR", - args: { - command: { name: "tsn dif", type: "MergedArgument" }, - text: { type: "BlankArgument", status: "INCOMPLETE" } - } - } - }, - { - setup: "tsn di<TAB>", - check: { - input: "tsn dif ", - hints: "<text>", - markup: "VVVVVVVV", - cursor: 8, - status: "ERROR", - args: { - command: { name: "tsn dif", type: "Argument" }, - text: { type: "BlankArgument", status: "INCOMPLETE" } - } - } - }, - // The above 2 tests take different routes to 'tsn dif '. - // The results should be similar. The difference is in args.command.type. - { - setup: "tsg -", - check: { - input: "tsg -", - hints: "-txt1 <solo> [options]", - markup: "VVVVI", - cursor: 5, - status: "ERROR", - args: { - solo: { value: undefined, status: "INCOMPLETE" }, - txt1: { value: undefined, status: "VALID" }, - bool: { value: false, status: "VALID" }, - txt2: { value: undefined, status: "VALID" }, - num: { value: undefined, status: "VALID" } - } - } - }, - { - setup: "tsg -<TAB>", - check: { - input: "tsg --txt1 ", - hints: "<string> <solo> [options]", - markup: "VVVVIIIIIIV", - cursor: 11, - status: "ERROR", - args: { - solo: { value: undefined, status: "INCOMPLETE" }, - txt1: { value: undefined, status: "INCOMPLETE" }, - bool: { value: false, status: "VALID" }, - txt2: { value: undefined, status: "VALID" }, - num: { value: undefined, status: "VALID" } - } - } - }, - { - setup: "tsg --txt1 fred", - check: { - input: "tsg --txt1 fred", - hints: " <solo> [options]", - markup: "VVVVVVVVVVVVVVV", - status: "ERROR", - args: { - solo: { value: undefined, status: "INCOMPLETE" }, - txt1: { value: "fred", status: "VALID" }, - bool: { value: false, status: "VALID" }, - txt2: { value: undefined, status: "VALID" }, - num: { value: undefined, status: "VALID" } - } - } - }, - { - setup: "tscook key value --path path --", - check: { - input: "tscook key value --path path --", - hints: "domain [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVVVII", - status: "ERROR", - args: { - key: { value: "key", status: "VALID" }, - value: { value: "value", status: "VALID" }, - path: { value: "path", status: "VALID" }, - domain: { value: undefined, status: "VALID" }, - secure: { value: false, status: "VALID" } - } - } - }, - { - setup: "tscook key value --path path --domain domain --", - check: { - input: "tscook key value --path path --domain domain --", - hints: "secure [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVII", - status: "ERROR", - args: { - key: { value: "key", status: "VALID" }, - value: { value: "value", status: "VALID" }, - path: { value: "path", status: "VALID" }, - domain: { value: "domain", status: "VALID" }, - secure: { value: false, status: "VALID" } - } - } - } - ]); - -}; - -exports.testCase = function (options) { - return helpers.audit(options, [ - { - setup: "tsg AA", - check: { - input: "tsg AA", - hints: " [options] -> aaa", - markup: "VVVVII", - status: "ERROR", - args: { - solo: { value: undefined, text: "AA", status: "INCOMPLETE" }, - txt1: { value: undefined, status: "VALID" }, - bool: { value: false, status: "VALID" }, - txt2: { value: undefined, status: "VALID" }, - num: { value: undefined, status: "VALID" } - } - } - } - ]); -}; - -exports.testIncomplete = function (options) { - return helpers.audit(options, [ - { - setup: "tsm a a -", - check: { - args: { - abc: { value: "a", type: "Argument" }, - txt: { value: "a", type: "Argument" }, - num: { value: undefined, arg: " -", type: "Argument", status: "INCOMPLETE" } - } - } - }, - { - setup: "tsg -", - check: { - args: { - solo: { type: "BlankArgument" }, - txt1: { type: "BlankArgument" }, - bool: { type: "BlankArgument" }, - txt2: { type: "BlankArgument" }, - num: { type: "BlankArgument" } - } - }, - post: function () { - var requisition = options.requisition; - - assert.is(requisition._unassigned[0], - requisition.getAssignmentAt(5), - "unassigned -"); - assert.is(requisition._unassigned.length, - 1, - "single unassigned - tsg -"); - assert.is(requisition._unassigned[0].param.type.isIncompleteName, - true, - "unassigned.isIncompleteName: tsg -"); - } - } - ]); -}; - -exports.testRepeated = function (options) { - return helpers.audit(options, [ - { - setup: "tscook key value --path jjj --path kkk", - check: { - input: "tscook key value --path jjj --path kkk", - hints: " [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVVEEEEEEVEEE", - cursor: 38, - current: "__unassigned", - status: "ERROR", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ " --path", " kkk" ], - args: { - command: { name: "tscook" }, - key: { - value: "key", - arg: " key", - status: "VALID", - message: "" - }, - value: { - value: "value", - arg: " value", - status: "VALID", - message: "" - }, - path: { - value: "jjj", - arg: " --path jjj", - status: "VALID", - message: "" - }, - domain: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - secure: { - value: false, - arg: "", - status: "VALID", - message: "" - }, - } - } - } - ]); -}; - -exports.testHidden = function (options) { - return helpers.audit(options, [ - { - setup: "tshidde", - check: { - input: "tshidde", - hints: " -> tse", - status: "ERROR" - } - }, - { - setup: "tshidden", - check: { - input: "tshidden", - hints: " [options]", - markup: "VVVVVVVV", - status: "VALID", - args: { - visible: { value: undefined, status: "VALID" }, - invisiblestring: { value: undefined, status: "VALID" }, - invisibleboolean: { value: false, status: "VALID" } - } - } - }, - { - setup: "tshidden --vis", - check: { - input: "tshidden --vis", - hints: "ible [options]", - markup: "VVVVVVVVVIIIII", - status: "ERROR", - args: { - visible: { value: undefined, status: "VALID" }, - invisiblestring: { value: undefined, status: "VALID" }, - invisibleboolean: { value: false, status: "VALID" } - } - } - }, - { - setup: "tshidden --invisiblestrin", - check: { - input: "tshidden --invisiblestrin", - hints: " [options]", - markup: "VVVVVVVVVEEEEEEEEEEEEEEEE", - status: "ERROR", - args: { - visible: { value: undefined, status: "VALID" }, - invisiblestring: { value: undefined, status: "VALID" }, - invisibleboolean: { value: false, status: "VALID" } - } - } - }, - { - setup: "tshidden --invisiblestring", - check: { - input: "tshidden --invisiblestring", - hints: " <string> [options]", - markup: "VVVVVVVVVIIIIIIIIIIIIIIIII", - status: "ERROR", - args: { - visible: { value: undefined, status: "VALID" }, - invisiblestring: { value: undefined, status: "INCOMPLETE" }, - invisibleboolean: { value: false, status: "VALID" } - } - } - }, - { - setup: "tshidden --invisiblestring x", - check: { - input: "tshidden --invisiblestring x", - hints: " [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - args: { - visible: { value: undefined, status: "VALID" }, - invisiblestring: { value: "x", status: "VALID" }, - invisibleboolean: { value: false, status: "VALID" } - } - } - }, - { - setup: "tshidden --invisibleboolea", - check: { - input: "tshidden --invisibleboolea", - hints: " [options]", - markup: "VVVVVVVVVEEEEEEEEEEEEEEEEE", - status: "ERROR", - args: { - visible: { value: undefined, status: "VALID" }, - invisiblestring: { value: undefined, status: "VALID" }, - invisibleboolean: { value: false, status: "VALID" } - } - } - }, - { - setup: "tshidden --invisibleboolean", - check: { - input: "tshidden --invisibleboolean", - hints: " [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - args: { - visible: { value: undefined, status: "VALID" }, - invisiblestring: { value: undefined, status: "VALID" }, - invisibleboolean: { value: true, status: "VALID" } - } - } - }, - { - setup: "tshidden --visible xxx", - check: { - input: "tshidden --visible xxx", - markup: "VVVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - hints: "", - args: { - visible: { value: "xxx", status: "VALID" }, - invisiblestring: { value: undefined, status: "VALID" }, - invisibleboolean: { value: false, status: "VALID" } - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_inputter.js +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_inputter.js"); -} - -// var assert = require('../testharness/assert'); -var KeyEvent = require("gcli/util/util").KeyEvent; - -var latestEvent; -var latestData; - -var outputted = function (ev) { - latestEvent = ev; - - ev.output.promise.then(function () { - latestData = ev.output.data; - }); -}; - - -exports.setup = function (options) { - options.requisition.commandOutputManager.onOutput.add(outputted); -}; - -exports.shutdown = function (options) { - options.requisition.commandOutputManager.onOutput.remove(outputted); -}; - -exports.testOutput = function (options) { - latestEvent = undefined; - latestData = undefined; - - var terminal = options.terminal; - if (!terminal) { - assert.log("Skipping testInputter.testOutput due to lack of terminal."); - return; - } - - var focusManager = terminal.focusManager; - - terminal.setInput("tss"); - - var ev0 = { keyCode: KeyEvent.DOM_VK_RETURN }; - terminal.onKeyDown(ev0); - - assert.is(terminal.getInputState().typed, - "tss", - "terminal should do nothing on RETURN keyDown"); - assert.is(latestEvent, undefined, "no events this test"); - assert.is(latestData, undefined, "no data this test"); - - var ev1 = { keyCode: KeyEvent.DOM_VK_RETURN }; - return terminal.handleKeyUp(ev1).then(function () { - assert.ok(latestEvent != null, "events this test"); - assert.is(latestData.name, "tss", "last command is tss"); - - assert.is(terminal.getInputState().typed, - "", - "terminal should exec on RETURN keyUp"); - - assert.ok(focusManager._recentOutput, "recent output happened"); - - var ev2 = { keyCode: KeyEvent.DOM_VK_F1 }; - return terminal.handleKeyUp(ev2).then(function () { - assert.ok(!focusManager._recentOutput, "no recent output happened post F1"); - assert.ok(focusManager._helpRequested, "F1 = help"); - - var ev3 = { keyCode: KeyEvent.DOM_VK_ESCAPE }; - return terminal.handleKeyUp(ev3).then(function () { - assert.ok(!focusManager._helpRequested, "ESCAPE = anti help"); - }); - }); - - }); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_intro.js +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_intro.js"); -} - -// var helpers = require('./helpers'); - -exports.testIntroStatus = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: function commandIntroMissing() { - return options.requisition.system.commands.get("intro") == null; - }, - setup: "intro", - check: { - typed: "intro", - markup: "VVVVV", - status: "VALID", - hints: "" - } - }, - { - setup: "intro foo", - check: { - typed: "intro foo", - markup: "VVVVVVEEE", - status: "ERROR", - hints: "" - } - }, - { - setup: "intro", - check: { - typed: "intro", - markup: "VVVVV", - status: "VALID", - hints: "" - }, - exec: { - output: [ - /command\s*line/, - /help/, - /F1/, - /Escape/ - ] - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_js.js +++ /dev/null @@ -1,570 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_js.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -exports.setup = function (options) { - if (jsTestDisallowed(options)) { - return; - } - - // Check that we're not trespassing on 'donteval' - var win = options.requisition.environment.window; - Object.defineProperty(win, "donteval", { - get: function () { - assert.ok(false, "donteval should not be used"); - console.trace(); - return { cant: "", touch: "", "this": "" }; - }, - enumerable: true, - configurable: true - }); -}; - -exports.shutdown = function (options) { - if (jsTestDisallowed(options)) { - return; - } - - delete options.requisition.environment.window.donteval; -}; - -function jsTestDisallowed(options) { - return options.isRemote || // Altering the environment (which isn't remoted) - options.isNode || - options.requisition.system.commands.get("{") == null; -} - -exports.testBasic = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: jsTestDisallowed, - setup: "{", - check: { - input: "{", - hints: "", - markup: "V", - cursor: 1, - current: "javascript", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: undefined, - arg: "{", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "{ ", - check: { - input: "{ ", - hints: "", - markup: "VV", - cursor: 2, - current: "javascript", - status: "ERROR", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: undefined, - arg: "{ ", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "{ w", - check: { - input: "{ w", - hints: "indow", - markup: "VVI", - cursor: 3, - current: "javascript", - status: "ERROR", - predictionsContains: [ "window" ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "w", - arg: "{ w", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "{ windo", - check: { - input: "{ windo", - hints: "w", - markup: "VVIIIII", - cursor: 7, - current: "javascript", - status: "ERROR", - predictions: [ "window" ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "windo", - arg: "{ windo", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "{ window", - check: { - input: "{ window", - hints: "", - markup: "VVVVVVVV", - cursor: 8, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "window", - arg: "{ window", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "{ window.do", - check: { - input: "{ window.do", - hints: "cument", - markup: "VVIIIIIIIII", - cursor: 11, - current: "javascript", - status: "ERROR", - predictionsContains: [ "window.document" ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "window.do", - arg: "{ window.do", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "{ window.document.title", - check: { - input: "{ window.document.title", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVV", - cursor: 23, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "window.document.title", - arg: "{ window.document.title", - status: "VALID", - message: "" - } - } - } - } - ]); -}; - -exports.testDocument = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: jsTestDisallowed, - setup: "{ docu", - check: { - input: "{ docu", - hints: "ment", - markup: "VVIIII", - cursor: 6, - current: "javascript", - status: "ERROR", - predictions: [ "document" ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "docu", - arg: "{ docu", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "{ docu<TAB>", - check: { - input: "{ document", - hints: "", - markup: "VVVVVVVVVV", - cursor: 10, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "document", - arg: "{ document", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "{ document.titl", - check: { - input: "{ document.titl", - hints: "e", - markup: "VVIIIIIIIIIIIII", - cursor: 15, - current: "javascript", - status: "ERROR", - predictions: [ "document.title" ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "document.titl", - arg: "{ document.titl", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "{ document.titl<TAB>", - check: { - input: "{ document.title ", - hints: "", - markup: "VVVVVVVVVVVVVVVVV", - cursor: 17, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "document.title", - // arg: '{ document.title ', - // Node/JSDom gets this wrong and omits the trailing space. Why? - status: "VALID", - message: "" - } - } - } - }, - { - setup: "{ document.title", - check: { - input: "{ document.title", - hints: "", - markup: "VVVVVVVVVVVVVVVV", - cursor: 16, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "document.title", - arg: "{ document.title", - status: "VALID", - message: "" - } - } - } - } - ]); -}; - -exports.testDonteval = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: true, // Commented out until we fix non-enumerable props - setup: "{ don", - check: { - input: "{ don", - hints: "teval", - markup: "VVIII", - cursor: 5, - current: "javascript", - status: "ERROR", - predictions: [ "donteval" ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "don", - arg: "{ don", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "{ donteval", - check: { - input: "{ donteval", - hints: "", - markup: "VVVVVVVVVV", - cursor: 10, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "donteval", - arg: "{ donteval", - status: "VALID", - message: "" - } - } - } - }, - /* - // This is a controversial test - technically we can tell that it's an error - // because 'donteval.' is a syntax error, however donteval is unsafe so we - // are playing safe by bailing out early. It's enough of a corner case that - // I don't think it warrants fixing - { - setup: '{ donteval.', - check: { - input: '{ donteval.', - hints: '', - markup: 'VVVVVVVVVVV', - cursor: 11, - current: 'javascript', - status: 'VALID', - predictions: [ ], - unassigned: [ ], - args: { - command: { name: '{' }, - javascript: { - value: 'donteval.', - arg: '{ donteval.', - status: 'VALID', - message: '' - } - } - } - }, - */ - { - setup: "{ donteval.cant", - check: { - input: "{ donteval.cant", - hints: "", - markup: "VVVVVVVVVVVVVVV", - cursor: 15, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "donteval.cant", - arg: "{ donteval.cant", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "{ donteval.xxx", - check: { - input: "{ donteval.xxx", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "javascript", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "{" }, - javascript: { - value: "donteval.xxx", - arg: "{ donteval.xxx", - status: "VALID", - message: "" - } - } - } - } - ]); -}; - -exports.testExec = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: jsTestDisallowed, - setup: "{ 1+1", - check: { - input: "{ 1+1", - hints: "", - markup: "VVVVV", - cursor: 5, - current: "javascript", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - javascript: { - value: "1+1", - arg: "{ 1+1", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "2", - type: "number", - error: false - } - }, - { - setup: "{ 1+1 }", - check: { - input: "{ 1+1 }", - hints: "", - markup: "VVVVVVV", - cursor: 7, - current: "javascript", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - javascript: { - value: "1+1", - arg: "{ 1+1 }", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "2", - type: "number", - error: false - } - }, - { - setup: '{ "hello"', - check: { - input: '{ "hello"', - hints: "", - markup: "VVVVVVVVV", - cursor: 9, - current: "javascript", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - javascript: { - value: '"hello"', - arg: '{ "hello"', - status: "VALID", - message: "" - } - } - }, - exec: { - output: "hello", - type: "string", - error: false - } - }, - { - setup: '{ "hello" + 1', - check: { - input: '{ "hello" + 1', - hints: "", - markup: "VVVVVVVVVVVVV", - cursor: 13, - current: "javascript", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - javascript: { - value: '"hello" + 1', - arg: '{ "hello" + 1', - status: "VALID", - message: "" - } - } - }, - exec: { - output: "hello1", - type: "string", - error: false - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_keyboard1.js +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_keyboard1.js"); -} - -var javascript = require("gcli/types/javascript"); -// var helpers = require('./helpers'); - -exports.testSimple = function (options) { - return helpers.audit(options, [ - { - setup: "tsela<TAB>", - check: { input: "tselarr ", cursor: 8 } - }, - { - setup: "tsn di<TAB>", - check: { input: "tsn dif ", cursor: 8 } - }, - { - setup: "tsg a<TAB>", - check: { input: "tsg aaa ", cursor: 8 } - } - ]); -}; - -exports.testScript = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: options.isRemote || - options.requisition.system.commands.get("{") == null, - setup: "{ wind<TAB>", - check: { input: "{ window" } - }, - { - setup: "{ window.docum<TAB>", - check: { input: "{ window.document" } - } - ]); -}; - -exports.testJsdom = function (options) { - return helpers.audit(options, [ - { - skipIf: options.isRemote || - options.requisition.system.commands.get("{") == null, - setup: "{ window.document.titl<TAB>", - check: { input: "{ window.document.title " } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_keyboard2.js +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_keyboard2.js"); -} - -// var helpers = require('./helpers'); - -exports.testIncr = function (options) { - return helpers.audit(options, [ - /* - // We currently refuse to increment/decrement things with a non-valid - // status which makes sense for many cases, and is a decent default. - // However in theory we could do better, these tests are there for then - { - setup: 'tsu -70<UP>', - check: { input: 'tsu -5' } - }, - { - setup: 'tsu -7<UP>', - check: { input: 'tsu -5' } - }, - { - setup: 'tsu -6<UP>', - check: { input: 'tsu -5' } - }, - */ - { - setup: "tsu -5<UP>", - check: { input: "tsu -3" } - }, - { - setup: "tsu -4<UP>", - check: { input: "tsu -3" } - }, - { - setup: "tsu -3<UP>", - check: { input: "tsu 0" } - }, - { - setup: "tsu -2<UP>", - check: { input: "tsu 0" } - }, - { - setup: "tsu -1<UP>", - check: { input: "tsu 0" } - }, - { - setup: "tsu 0<UP>", - check: { input: "tsu 3" } - }, - { - setup: "tsu 1<UP>", - check: { input: "tsu 3" } - }, - { - setup: "tsu 2<UP>", - check: { input: "tsu 3" } - }, - { - setup: "tsu 3<UP>", - check: { input: "tsu 6" } - }, - { - setup: "tsu 4<UP>", - check: { input: "tsu 6" } - }, - { - setup: "tsu 5<UP>", - check: { input: "tsu 6" } - }, - { - setup: "tsu 6<UP>", - check: { input: "tsu 9" } - }, - { - setup: "tsu 7<UP>", - check: { input: "tsu 9" } - }, - { - setup: "tsu 8<UP>", - check: { input: "tsu 9" } - }, - { - setup: "tsu 9<UP>", - check: { input: "tsu 10" } - }, - { - setup: "tsu 10<UP>", - check: { input: "tsu 10" } - } - /* - // See notes above - { - setup: 'tsu 100<UP>', - check: { input: 'tsu 10' } - } - */ - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_keyboard3.js +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_keyboard3.js"); -} - -// var helpers = require('./helpers'); - -exports.testDecr = function (options) { - return helpers.audit(options, [ - /* - // See notes at top of testIncr in testKeyboard2.js - { - setup: 'tsu -70<DOWN>', - check: { input: 'tsu -5' } - }, - { - setup: 'tsu -7<DOWN>', - check: { input: 'tsu -5' } - }, - { - setup: 'tsu -6<DOWN>', - check: { input: 'tsu -5' } - }, - */ - { - setup: "tsu -5<DOWN>", - check: { input: "tsu -5" } - }, - { - setup: "tsu -4<DOWN>", - check: { input: "tsu -5" } - }, - { - setup: "tsu -3<DOWN>", - check: { input: "tsu -5" } - }, - { - setup: "tsu -2<DOWN>", - check: { input: "tsu -3" } - }, - { - setup: "tsu -1<DOWN>", - check: { input: "tsu -3" } - }, - { - setup: "tsu 0<DOWN>", - check: { input: "tsu -3" } - }, - { - setup: "tsu 1<DOWN>", - check: { input: "tsu 0" } - }, - { - setup: "tsu 2<DOWN>", - check: { input: "tsu 0" } - }, - { - setup: "tsu 3<DOWN>", - check: { input: "tsu 0" } - }, - { - setup: "tsu 4<DOWN>", - check: { input: "tsu 3" } - }, - { - setup: "tsu 5<DOWN>", - check: { input: "tsu 3" } - }, - { - setup: "tsu 6<DOWN>", - check: { input: "tsu 3" } - }, - { - setup: "tsu 7<DOWN>", - check: { input: "tsu 6" } - }, - { - setup: "tsu 8<DOWN>", - check: { input: "tsu 6" } - }, - { - setup: "tsu 9<DOWN>", - check: { input: "tsu 6" } - }, - { - setup: "tsu 10<DOWN>", - check: { input: "tsu 9" } - } - /* - // See notes at top of testIncr - { - setup: 'tsu 100<DOWN>', - check: { input: 'tsu 9' } - } - */ - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_keyboard4.js +++ /dev/null @@ -1,189 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_keyboard4.js"); -} - -// var helpers = require('./helpers'); - -exports.testIncrFloat = function (options) { - return helpers.audit(options, [ - /* - // See notes at top of testIncr - { - setup: 'tsf -70<UP>', - check: { input: 'tsf -6.5' } - }, - */ - { - setup: "tsf -6.5<UP>", - check: { input: "tsf -6" } - }, - { - setup: "tsf -6<UP>", - check: { input: "tsf -4.5" } - }, - { - setup: "tsf -4.5<UP>", - check: { input: "tsf -3" } - }, - { - setup: "tsf -4<UP>", - check: { input: "tsf -3" } - }, - { - setup: "tsf -3<UP>", - check: { input: "tsf -1.5" } - }, - { - setup: "tsf -1.5<UP>", - check: { input: "tsf 0" } - }, - { - setup: "tsf 0<UP>", - check: { input: "tsf 1.5" } - }, - { - setup: "tsf 1.5<UP>", - check: { input: "tsf 3" } - }, - { - setup: "tsf 2<UP>", - check: { input: "tsf 3" } - }, - { - setup: "tsf 3<UP>", - check: { input: "tsf 4.5" } - }, - { - setup: "tsf 5<UP>", - check: { input: "tsf 6" } - } - /* - // See notes at top of testIncr - { - setup: 'tsf 100<UP>', - check: { input: 'tsf -6.5' } - } - */ - ]); -}; - -exports.testDecrFloat = function (options) { - return helpers.audit(options, [ - /* - // See notes at top of testIncr - { - setup: 'tsf -70<DOWN>', - check: { input: 'tsf 11.5' } - }, - */ - { - setup: "tsf -6.5<DOWN>", - check: { input: "tsf -6.5" } - }, - { - setup: "tsf -6<DOWN>", - check: { input: "tsf -6.5" } - }, - { - setup: "tsf -4.5<DOWN>", - check: { input: "tsf -6" } - }, - { - setup: "tsf -4<DOWN>", - check: { input: "tsf -4.5" } - }, - { - setup: "tsf -3<DOWN>", - check: { input: "tsf -4.5" } - }, - { - setup: "tsf -1.5<DOWN>", - check: { input: "tsf -3" } - }, - { - setup: "tsf 0<DOWN>", - check: { input: "tsf -1.5" } - }, - { - setup: "tsf 1.5<DOWN>", - check: { input: "tsf 0" } - }, - { - setup: "tsf 2<DOWN>", - check: { input: "tsf 1.5" } - }, - { - setup: "tsf 3<DOWN>", - check: { input: "tsf 1.5" } - }, - { - setup: "tsf 5<DOWN>", - check: { input: "tsf 4.5" } - } - /* - // See notes at top of testIncr - { - setup: 'tsf 100<DOWN>', - check: { input: 'tsf 11.5' } - } - */ - ]); -}; - -exports.testIncrSelection = function (options) { - /* - // Bug 829516: GCLI up/down navigation over selection is sometimes bizarre - return helpers.audit(options, [ - { - setup: 'tselarr <DOWN>', - check: { hints: '2' }, - exec: {} - }, - { - setup: 'tselarr <DOWN><DOWN>', - check: { hints: '3' }, - exec: {} - }, - { - setup: 'tselarr <DOWN><DOWN><DOWN>', - check: { hints: '1' }, - exec: {} - } - ]); - */ -}; - -exports.testDecrSelection = function (options) { - /* - // Bug 829516: GCLI up/down navigation over selection is sometimes bizarre - return helpers.audit(options, [ - { - setup: 'tselarr <UP>', - check: { hints: '3' } - } - ]); - */ -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_keyboard5.js +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_keyboard5.js"); -} - -// var helpers = require('./helpers'); - -exports.testCompleteDown = function (options) { - return helpers.audit(options, [ - { - setup: "tsn e<DOWN><DOWN><DOWN><DOWN><DOWN><TAB>", - check: { input: "tsn exte " } - }, - { - setup: "tsn e<DOWN><DOWN><DOWN><DOWN><TAB>", - check: { input: "tsn ext " } - }, - { - setup: "tsn e<DOWN><DOWN><DOWN><TAB>", - check: { input: "tsn extend " } - }, - { - setup: "tsn e<DOWN><DOWN><TAB>", - check: { input: "tsn exten " } - }, - { - setup: "tsn e<DOWN><TAB>", - check: { input: "tsn exte " } - }, - { - setup: "tsn e<TAB>", - check: { input: "tsn ext " } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_keyboard6.js +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_keyboard6.js"); -} - -// var helpers = require('./helpers'); - -exports.testCompleteUp = function (options) { - return helpers.audit(options, [ - { - setup: "tsn e<UP><TAB>", - check: { input: "tsn extend " } - }, - { - setup: "tsn e<UP><UP><TAB>", - check: { input: "tsn exten " } - }, - { - setup: "tsn e<UP><UP><UP><TAB>", - check: { input: "tsn exte " } - }, - { - setup: "tsn e<UP><UP><UP><UP><TAB>", - check: { input: "tsn ext " } - }, - { - setup: "tsn e<UP><UP><UP><UP><UP><TAB>", - check: { input: "tsn extend " } - }, - { - setup: "tsn e<UP><UP><UP><UP><UP><UP><TAB>", - check: { input: "tsn exten " } - }, - { - setup: "tsn e<UP><UP><UP><UP><UP><UP><UP><TAB>", - check: { input: "tsn exte " } - }, - { - setup: "tsn e<UP><UP><UP><UP><UP><UP><UP><UP><TAB>", - check: { input: "tsn ext " } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_menu.js +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_menu.js"); -} - -// var helpers = require('./helpers'); - -exports.testOptions = function (options) { - return helpers.audit(options, [ - { - setup: "tslong", - check: { - input: "tslong", - markup: "VVVVVV", - status: "ERROR", - hints: " <msg> [options]", - args: { - msg: { value: undefined, status: "INCOMPLETE" }, - num: { value: undefined, status: "VALID" }, - sel: { value: undefined, status: "VALID" }, - bool: { value: false, status: "VALID" }, - bool2: { value: false, status: "VALID" }, - sel2: { value: undefined, status: "VALID" }, - num2: { value: undefined, status: "VALID" } - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_node.js +++ /dev/null @@ -1,317 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_node.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -exports.testNode = function (options) { - return helpers.audit(options, [ - { - setup: "tse ", - check: { - input: "tse ", - hints: "<node> [options]", - markup: "VVVV", - cursor: 4, - current: "node", - status: "ERROR", - args: { - command: { name: "tse" }, - node: { status: "INCOMPLETE" }, - nodes: { status: "VALID" }, - nodes2: { status: "VALID" } - } - } - }, - { - setup: "tse :", - check: { - input: "tse :", - hints: " [options]", - markup: "VVVVE", - cursor: 5, - current: "node", - status: "ERROR", - args: { - command: { name: "tse" }, - node: { - arg: " :", - status: "ERROR", - message: "Syntax error in CSS query" - }, - nodes: { status: "VALID" }, - nodes2: { status: "VALID" } - } - } - }, - { - setup: "tse #", - check: { - input: "tse #", - hints: " [options]", - markup: "VVVVE", - cursor: 5, - current: "node", - status: "ERROR", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: " #", - status: "ERROR", - message: "Syntax error in CSS query" - }, - nodes: { status: "VALID" }, - nodes2: { status: "VALID" } - } - } - }, - { - setup: "tse .", - check: { - input: "tse .", - hints: " [options]", - markup: "VVVVE", - cursor: 5, - current: "node", - status: "ERROR", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: " .", - status: "ERROR", - message: "Syntax error in CSS query" - }, - nodes: { status: "VALID" }, - nodes2: { status: "VALID" } - } - } - }, - { - setup: "tse *", - check: { - input: "tse *", - hints: " [options]", - markup: "VVVVE", - cursor: 5, - current: "node", - status: "ERROR", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: " *", - status: "ERROR" - // message: 'Too many matches (128)' - }, - nodes: { status: "VALID" }, - nodes2: { status: "VALID" } - } - } - } - ]); -}; - -exports.testNodeDom = function (options) { - return helpers.audit(options, [ - { - setup: "tse :root", - check: { - input: "tse :root", - hints: " [options]", - markup: "VVVVVVVVV", - cursor: 9, - current: "node", - status: "VALID", - args: { - command: { name: "tse" }, - node: { arg: " :root", status: "VALID" }, - nodes: { status: "VALID" }, - nodes2: { status: "VALID" } - } - } - }, - { - setup: "tse :root ", - check: { - input: "tse :root ", - hints: "[options]", - markup: "VVVVVVVVVV", - cursor: 10, - current: "node", - status: "VALID", - args: { - command: { name: "tse" }, - node: { arg: " :root ", status: "VALID" }, - nodes: { status: "VALID" }, - nodes2: { status: "VALID" } - } - }, - exec: { - }, - post: function (output) { - if (!options.isRemote) { - assert.is(output.args.node.tagName, "HTML", ":root tagName"); - } - } - }, - { - setup: "tse #gcli-nomatch", - check: { - input: "tse #gcli-nomatch", - hints: " [options]", - markup: "VVVVIIIIIIIIIIIII", - cursor: 17, - current: "node", - status: "ERROR", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: " #gcli-nomatch", - status: "INCOMPLETE", - message: "No matches" - }, - nodes: { status: "VALID" }, - nodes2: { status: "VALID" } - } - } - } - ]); -}; - -exports.testNodes = function (options) { - return helpers.audit(options, [ - { - setup: "tse :root --nodes *", - check: { - input: "tse :root --nodes *", - hints: " [options]", - markup: "VVVVVVVVVVVVVVVVVVV", - current: "nodes", - status: "VALID", - args: { - command: { name: "tse" }, - node: { arg: " :root", status: "VALID" }, - nodes: { arg: " --nodes *", status: "VALID" }, - nodes2: { status: "VALID" } - } - }, - exec: { - }, - post: function (output) { - if (!options.isRemote) { - assert.is(output.args.node.tagName, "HTML", ":root tagName"); - assert.ok(output.args.nodes.length > 3, "nodes length"); - assert.is(output.args.nodes2.length, 0, "nodes2 length"); - } - - assert.is(output.data.args.node, ":root", "node data"); - assert.is(output.data.args.nodes, "*", "nodes data"); - assert.is(output.data.args.nodes2, "Error", "nodes2 data"); - } - }, - { - setup: "tse :root --nodes2 div", - check: { - input: "tse :root --nodes2 div", - hints: " [options]", - markup: "VVVVVVVVVVVVVVVVVVVVVV", - cursor: 22, - current: "nodes2", - status: "VALID", - args: { - command: { name: "tse" }, - node: { arg: " :root", status: "VALID" }, - nodes: { status: "VALID" }, - nodes2: { arg: " --nodes2 div", status: "VALID" } - } - }, - exec: { - }, - post: function (output) { - if (!options.isRemote) { - assert.is(output.args.node.tagName, "HTML", ":root tagName"); - assert.is(output.args.nodes.length, 0, "nodes length"); - assert.is(output.args.nodes2.item(0).tagName, "DIV", "div tagName"); - } - - assert.is(output.data.args.node, ":root", "node data"); - assert.is(output.data.args.nodes, "Error", "nodes data"); - assert.is(output.data.args.nodes2, "div", "nodes2 data"); - } - }, - { - setup: "tse --nodes ffff", - check: { - input: "tse --nodes ffff", - hints: " <node> [options]", - markup: "VVVVIIIIIIIVIIII", - cursor: 16, - current: "nodes", - status: "ERROR", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: "", - status: "INCOMPLETE" - }, - nodes: { - value: undefined, - arg: " --nodes ffff", - status: "INCOMPLETE", - message: "No matches" - }, - nodes2: { arg: "", status: "VALID", message: "" } - } - } - }, - { - setup: "tse --nodes2 ffff", - check: { - input: "tse --nodes2 ffff", - hints: " <node> [options]", - markup: "VVVVVVVVVVVVVVVVV", - cursor: 17, - current: "nodes2", - status: "ERROR", - args: { - command: { name: "tse" }, - node: { - value: undefined, - arg: "", - status: "INCOMPLETE" - }, - nodes: { arg: "", status: "VALID", message: "" }, - nodes2: { arg: " --nodes2 ffff", status: "VALID", message: "" } - } - } - }, - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_pref1.js +++ /dev/null @@ -1,166 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_pref1.js"); -} - -// var helpers = require('./helpers'); - -exports.testPrefShowStatus = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: options.requisition.system.commands.get("pref") == null, - setup: "pref s", - check: { - typed: "pref s", - hints: "et", - markup: "IIIIVI", - status: "ERROR" - } - }, - { - setup: "pref show", - check: { - typed: "pref show", - hints: " <setting>", - markup: "VVVVVVVVV", - status: "ERROR" - } - }, - { - setup: "pref show ", - check: { - typed: "pref show ", - hints: "eagerHelper", - markup: "VVVVVVVVVV", - status: "ERROR" - } - }, - { - setup: "pref show tempTBo", - check: { - typed: "pref show tempTBo", - hints: "ol", - markup: "VVVVVVVVVVIIIIIII", - status: "ERROR" - } - }, - { - setup: "pref show tempTBool", - check: { - typed: "pref show tempTBool", - markup: "VVVVVVVVVVVVVVVVVVV", - status: "VALID", - hints: "" - } - }, - { - setup: "pref show tempTBool 4", - check: { - typed: "pref show tempTBool 4", - markup: "VVVVVVVVVVVVVVVVVVVVE", - status: "ERROR", - hints: "" - } - }, - { - setup: "pref show tempNumber 4", - check: { - typed: "pref show tempNumber 4", - markup: "VVVVVVVVVVVVVVVVVVVVVE", - status: "ERROR", - hints: "" - } - } - ]); -}; - -exports.testPrefSetStatus = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: options.requisition.system.commands.get("pref") == null, - setup: "pref s", - check: { - typed: "pref s", - hints: "et", - markup: "IIIIVI", - status: "ERROR" - } - }, - { - setup: "pref set", - check: { - typed: "pref set", - hints: " <setting> <value>", - markup: "VVVVVVVV", - status: "ERROR" - } - }, - { - setup: "pref xxx", - check: { - typed: "pref xxx", - markup: "IIIIVIII", - status: "ERROR" - } - }, - { - setup: "pref set ", - check: { - typed: "pref set ", - hints: "eagerHelper <value>", - markup: "VVVVVVVVV", - status: "ERROR" - } - }, - { - setup: "pref set tempTBo", - check: { - typed: "pref set tempTBo", - hints: "ol <value>", - markup: "VVVVVVVVVIIIIIII", - status: "ERROR" - } - }, - { - skipIf: options.isRemote, - setup: "pref set tempTBool 4", - check: { - typed: "pref set tempTBool 4", - markup: "VVVVVVVVVVVVVVVVVVVE", - status: "ERROR", - hints: "" - } - }, - { - setup: "pref set tempNumber 4", - check: { - typed: "pref set tempNumber 4", - markup: "VVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - hints: "" - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_pref2.js +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_pref2.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); -var mockSettings = require("./mockSettings"); - -exports.testPrefExec = function (options) { - if (options.requisition.system.commands.get("pref") == null) { - assert.log("Skipping test; missing pref command."); - return; - } - - if (options.isRemote) { - assert.log("Skipping test which assumes local settings."); - return; - } - - assert.is(mockSettings.tempNumber.value, 42, "set to 42"); - - return helpers.audit(options, [ - { - // Delegated remote types can't transfer value types so we only test for - // the value of 'value' when we're local - skipIf: options.isRemote, - setup: "pref set tempNumber 4", - check: { - setting: { value: mockSettings.tempNumber }, - args: { value: { value: 4 } } - } - }, - { - setup: "pref set tempNumber 4", - check: { - input: "pref set tempNumber 4", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVV", - cursor: 21, - current: "value", - status: "VALID", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "pref set" }, - setting: { - arg: " tempNumber", - status: "VALID", - message: "" - }, - value: { - arg: " 4", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "" - }, - post: function () { - assert.is(mockSettings.tempNumber.value, 4, "set to 4"); - } - }, - { - setup: "pref reset tempNumber", - check: { - args: { - command: { name: "pref reset" }, - setting: { value: mockSettings.tempNumber } - } - }, - exec: { - output: "" - }, - post: function () { - assert.is(mockSettings.tempNumber.value, 42, "reset to 42"); - } - }, - { - skipRemainingIf: function commandPrefListMissing() { - return options.requisition.system.commands.get("pref list") == null; - }, - setup: "pref list tempNum", - check: { - args: { - command: { name: "pref list" }, - search: { value: "tempNum" } - } - }, - exec: { - output: /tempNum/ - } - }, - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_remotews.js +++ /dev/null @@ -1,485 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_remotews.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -// testRemoteWs and testRemoteXhr are virtually identical. -// Changes made here should be made there too. -// They are kept separate to save adding complexity to the test system and so -// to help us select the test that are available in different environments - -exports.testRemoteWebsocket = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: options.isRemote || options.isNode || options.isFirefox, - setup: "remote ", - check: { - input: "remote ", - hints: "", - markup: "EEEEEEV", - cursor: 7, - current: "__command", - status: "ERROR", - options: [ ], - message: "Can't use 'remote'.", - predictions: [ ], - unassigned: [ ], - } - }, - { - setup: "connect remote", - check: { - args: { - prefix: { value: "remote" }, - url: { value: undefined } - } - }, - exec: { - error: false - } - }, - { - setup: "disconnect remote", - check: { - args: { - prefix: { - value: function (front) { - assert.is(front.prefix, "remote", "disconnecting remote"); - } - } - } - }, - exec: { - output: /^Removed [0-9]* commands.$/, - type: "string", - error: false - } - }, - { - setup: "connect remote --method websocket", - check: { - args: { - prefix: { value: "remote" }, - url: { value: undefined } - } - }, - exec: { - error: false - } - }, - { - setup: "disconnect remote", - check: { - args: { - prefix: { - value: function (front) { - assert.is(front.prefix, "remote", "disconnecting remote"); - } - } - } - }, - exec: { - output: /^Removed [0-9]* commands.$/, - type: "string", - error: false - } - }, - { - setup: "connect remote --method websocket", - check: { - args: { - prefix: { value: "remote" }, - url: { value: undefined } - } - }, - exec: { - output: /^Added [0-9]* commands.$/, - type: "string", - error: false - } - }, - { - setup: "remote ", - check: { - input: "remote ", - // PhantomJS fails on this. Unsure why - // hints: ' {', - markup: "IIIIIIV", - status: "ERROR", - optionsIncludes: [ - "remote", "remote cd", "remote context", "remote echo", - "remote exec", "remote exit", "remote firefox", "remote help", - "remote intro", "remote make" - ], - message: "", - predictionsIncludes: [ "remote" ], - unassigned: [ ], - } - }, - { - setup: "remote echo hello world", - check: { - input: "remote echo hello world", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVV", - cursor: 23, - current: "message", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote echo" }, - message: { - value: "hello world", - arg: " hello world", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "hello world", - type: "string", - error: false - } - }, - { - setup: "remote exec ls", - check: { - input: "remote exec ls", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "command", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { - value: "ls", - arg: " ls", - status: "VALID", - message: "" - } - } - }, - exec: { - // output: '', We can't rely on the contents of the FS - type: "output", - error: false - } - }, - { - setup: "remote sleep mistake", - check: { - input: "remote sleep mistake", - hints: "", - markup: "VVVVVVVVVVVVVEEEEEEE", - cursor: 20, - current: "length", - status: "ERROR", - options: [ ], - message: 'Can\'t convert "mistake" to a number.', - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote sleep" }, - length: { - value: undefined, - arg: " mistake", - status: "ERROR", - message: 'Can\'t convert "mistake" to a number.' - } - } - } - }, - { - setup: "remote sleep 1", - check: { - input: "remote sleep 1", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "length", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote sleep" }, - length: { value: 1, arg: " 1", status: "VALID", message: "" } - } - }, - exec: { - output: "Done", - type: "string", - error: false - } - }, - { - setup: "remote help ", - skipIf: true, // The help command is not remotable - check: { - input: "remote help ", - hints: "[search]", - markup: "VVVVVVVVVVVV", - cursor: 12, - current: "search", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote help" }, - search: { - value: undefined, - arg: "", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "", - type: "string", - error: false - } - }, - { - setup: "remote intro", - check: { - input: "remote intro", - hints: "", - markup: "VVVVVVVVVVVV", - cursor: 12, - current: "__command", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote intro" } - } - }, - exec: { - output: [ - /GCLI is an experiment/, - /F1\/Escape/ - ], - type: "intro", - error: false - } - }, - { - setup: "context remote", - check: { - input: "context remote", - // hints: ' {', - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "prefix", - status: "VALID", - optionsContains: [ - "remote", "remote cd", "remote echo", "remote exec", "remote exit", - "remote firefox", "remote help", "remote intro", "remote make" - ], - message: "", - // predictionsContains: [ - // 'remote', 'remote cd', 'remote echo', 'remote exec', 'remote exit', - // 'remote firefox', 'remote help', 'remote intro', 'remote make', - // 'remote pref' - // ], - unassigned: [ ], - args: { - command: { name: "context" }, - prefix: { - arg: " remote", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Using remote as a command prefix", - type: "string", - error: false - } - }, - { - setup: "exec ls", - check: { - input: "exec ls", - hints: "", - markup: "VVVVVVV", - cursor: 7, - current: "command", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { value: "ls", arg: " ls", status: "VALID", message: "" }, - } - }, - exec: { - // output: '', We can't rely on the contents of the filesystem - type: "output", - error: false - } - }, - { - setup: "echo hello world", - check: { - input: "echo hello world", - hints: "", - markup: "VVVVVVVVVVVVVVVV", - cursor: 16, - current: "message", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote echo" }, - message: { - value: "hello world", - arg: " hello world", - status: "VALID", - message: "" - } - } - }, - exec: { - output: /^hello world$/, - type: "string", - error: false - } - }, - { - setup: "context", - check: { - input: "context", - hints: " [prefix]", - markup: "VVVVVVV", - cursor: 7, - current: "__command", - status: "VALID", - optionsContains: [ - "remote", "remote cd", "remote echo", "remote exec", "remote exit", - "remote firefox", "remote help", "remote intro", "remote make" - ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "context" }, - prefix: { value: undefined, arg: "", status: "VALID", message: "" } - } - }, - exec: { - output: "Command prefix is unset", - type: "string", - error: false - } - }, - { - setup: "disconnect ", - check: { - input: "disconnect ", - hints: "remote", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "prefix", - status: "ERROR", - options: [ "remote" ], - message: "", - predictions: [ "remote" ], - unassigned: [ ], - args: { - command: { name: "disconnect" }, - prefix: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for 'prefix'." - } - } - } - }, - { - setup: "disconnect remote", - check: { - input: "disconnect remote", - hints: "", - markup: "VVVVVVVVVVVVVVVVV", - status: "VALID", - message: "", - unassigned: [ ], - args: { - prefix: { - value: function (front) { - assert.is(front.prefix, "remote", "disconnecting remote"); - }, - arg: " remote", - status: "VALID", - message: "" - } - } - }, - exec: { - output: /^Removed [0-9]* commands.$/, - type: "string", - error: false - } - }, - { - setup: "remote ", - check: { - input: "remote ", - hints: "", - markup: "EEEEEEV", - cursor: 7, - current: "__command", - status: "ERROR", - options: [ ], - message: "Can't use 'remote'.", - predictions: [ ], - unassigned: [ ], - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_remotexhr.js +++ /dev/null @@ -1,485 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_remotexhr.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -// testRemoteWs and testRemoteXhr are virtually identical. -// Changes made here should be made there too. -// They are kept separate to save adding complexity to the test system and so -// to help us select the test that are available in different environments - -exports.testRemoteXhr = function (options) { - return helpers.audit(options, [ - { - skipRemainingIf: options.isRemote || options.isNode || options.isFirefox, - setup: "remote ", - check: { - input: "remote ", - hints: "", - markup: "EEEEEEV", - cursor: 7, - current: "__command", - status: "ERROR", - options: [ ], - message: "Can't use 'remote'.", - predictions: [ ], - unassigned: [ ], - } - }, - { - setup: "connect remote", - check: { - args: { - prefix: { value: "remote" }, - url: { value: undefined } - } - }, - exec: { - error: false - } - }, - { - setup: "disconnect remote", - check: { - args: { - prefix: { - value: function (front) { - assert.is(front.prefix, "remote", "disconnecting remote"); - } - } - } - }, - exec: { - output: /^Removed [0-9]* commands.$/, - type: "string", - error: false - } - }, - { - setup: "connect remote --method xhr", - check: { - args: { - prefix: { value: "remote" }, - url: { value: undefined } - } - }, - exec: { - error: false - } - }, - { - setup: "disconnect remote", - check: { - args: { - prefix: { - value: function (front) { - assert.is(front.prefix, "remote", "disconnecting remote"); - } - } - } - }, - exec: { - output: /^Removed [0-9]* commands.$/, - type: "string", - error: false - } - }, - { - setup: "connect remote --method xhr", - check: { - args: { - prefix: { value: "remote" }, - url: { value: undefined } - } - }, - exec: { - output: /^Added [0-9]* commands.$/, - type: "string", - error: false - } - }, - { - setup: "remote ", - check: { - input: "remote ", - // PhantomJS fails on this. Unsure why - // hints: ' {', - markup: "IIIIIIV", - status: "ERROR", - optionsIncludes: [ - "remote", "remote cd", "remote context", "remote echo", - "remote exec", "remote exit", "remote firefox", "remote help", - "remote intro", "remote make" - ], - message: "", - predictionsIncludes: [ "remote" ], - unassigned: [ ], - } - }, - { - setup: "remote echo hello world", - check: { - input: "remote echo hello world", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVV", - cursor: 23, - current: "message", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote echo" }, - message: { - value: "hello world", - arg: " hello world", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "hello world", - type: "string", - error: false - } - }, - { - setup: "remote exec ls", - check: { - input: "remote exec ls", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "command", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { - value: "ls", - arg: " ls", - status: "VALID", - message: "" - } - } - }, - exec: { - // output: '', We can't rely on the contents of the FS - type: "output", - error: false - } - }, - { - setup: "remote sleep mistake", - check: { - input: "remote sleep mistake", - hints: "", - markup: "VVVVVVVVVVVVVEEEEEEE", - cursor: 20, - current: "length", - status: "ERROR", - options: [ ], - message: 'Can\'t convert "mistake" to a number.', - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote sleep" }, - length: { - value: undefined, - arg: " mistake", - status: "ERROR", - message: 'Can\'t convert "mistake" to a number.' - } - } - } - }, - { - setup: "remote sleep 1", - check: { - input: "remote sleep 1", - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "length", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote sleep" }, - length: { value: 1, arg: " 1", status: "VALID", message: "" } - } - }, - exec: { - output: "Done", - type: "string", - error: false - } - }, - { - setup: "remote help ", - skipIf: true, // The help command is not remotable - check: { - input: "remote help ", - hints: "[search]", - markup: "VVVVVVVVVVVV", - cursor: 12, - current: "search", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote help" }, - search: { - value: undefined, - arg: "", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "", - type: "string", - error: false - } - }, - { - setup: "remote intro", - check: { - input: "remote intro", - hints: "", - markup: "VVVVVVVVVVVV", - cursor: 12, - current: "__command", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote intro" } - } - }, - exec: { - output: [ - /GCLI is an experiment/, - /F1\/Escape/ - ], - type: "intro", - error: false - } - }, - { - setup: "context remote", - check: { - input: "context remote", - // hints: ' {', - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "prefix", - status: "VALID", - optionsContains: [ - "remote", "remote cd", "remote echo", "remote exec", "remote exit", - "remote firefox", "remote help", "remote intro", "remote make" - ], - message: "", - // predictionsContains: [ - // 'remote', 'remote cd', 'remote echo', 'remote exec', 'remote exit', - // 'remote firefox', 'remote help', 'remote intro', 'remote make', - // 'remote pref' - // ], - unassigned: [ ], - args: { - command: { name: "context" }, - prefix: { - arg: " remote", - status: "VALID", - message: "" - } - } - }, - exec: { - output: "Using remote as a command prefix", - type: "string", - error: false - } - }, - { - setup: "exec ls", - check: { - input: "exec ls", - hints: "", - markup: "VVVVVVV", - cursor: 7, - current: "command", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { value: "ls", arg: " ls", status: "VALID", message: "" }, - } - }, - exec: { - // output: '', We can't rely on the contents of the filesystem - type: "output", - error: false - } - }, - { - setup: "echo hello world", - check: { - input: "echo hello world", - hints: "", - markup: "VVVVVVVVVVVVVVVV", - cursor: 16, - current: "message", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "remote echo" }, - message: { - value: "hello world", - arg: " hello world", - status: "VALID", - message: "" - } - } - }, - exec: { - output: /^hello world$/, - type: "string", - error: false - } - }, - { - setup: "context", - check: { - input: "context", - hints: " [prefix]", - markup: "VVVVVVV", - cursor: 7, - current: "__command", - status: "VALID", - optionsContains: [ - "remote", "remote cd", "remote echo", "remote exec", "remote exit", - "remote firefox", "remote help", "remote intro", "remote make" - ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "context" }, - prefix: { value: undefined, arg: "", status: "VALID", message: "" } - } - }, - exec: { - output: "Command prefix is unset", - type: "string", - error: false - } - }, - { - setup: "disconnect ", - check: { - input: "disconnect ", - hints: "remote", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "prefix", - status: "ERROR", - options: [ "remote" ], - message: "", - predictions: [ "remote" ], - unassigned: [ ], - args: { - command: { name: "disconnect" }, - prefix: { - value: undefined, - arg: "", - status: "INCOMPLETE", - message: "Value required for 'prefix'." - } - } - } - }, - { - setup: "disconnect remote", - check: { - input: "disconnect remote", - hints: "", - markup: "VVVVVVVVVVVVVVVVV", - status: "VALID", - message: "", - unassigned: [ ], - args: { - prefix: { - value: function (front) { - assert.is(front.prefix, "remote", "disconnecting remote"); - }, - arg: " remote", - status: "VALID", - message: "" - } - } - }, - exec: { - output: /^Removed [0-9]* commands.$/, - type: "string", - error: false - } - }, - { - setup: "remote ", - check: { - input: "remote ", - hints: "", - markup: "EEEEEEV", - cursor: 7, - current: "__command", - status: "ERROR", - options: [ ], - message: "Can't use 'remote'.", - predictions: [ ], - unassigned: [ ], - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_resource.js +++ /dev/null @@ -1,154 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_resource.js"); -} - -// var helpers = require('./helpers'); -// var assert = require('../testharness/assert'); - -var util = require("gcli/util/util"); -var resource = require("gcli/types/resource"); -var Status = require("gcli/types/types").Status; - -exports.testCommand = function (options) { - return helpers.audit(options, [ - { - setup: "tsres ", - check: { - predictionsContains: [ "inline-css" ], - } - } - ]); -}; - -exports.testAllPredictions1 = function (options) { - if (options.isRemote) { - assert.log("Can't directly test remote types locally."); - return; - } - - var context = options.requisition.conversionContext; - var resource = options.requisition.system.types.createType("resource"); - return resource.getLookup(context).then(function (opts) { - assert.ok(opts.length > 1, "have all resources"); - - return util.promiseEach(opts, function (prediction) { - return checkPrediction(resource, prediction, context); - }); - }); -}; - -exports.testScriptPredictions = function (options) { - if (options.isRemote || options.isNode) { - assert.log("Can't directly test remote types locally."); - return; - } - - var context = options.requisition.conversionContext; - var types = options.requisition.system.types; - var resource = types.createType({ name: "resource", include: "text/javascript" }); - return resource.getLookup(context).then(function (opts) { - assert.ok(opts.length > 1, "have js resources"); - - return util.promiseEach(opts, function (prediction) { - return checkPrediction(resource, prediction, context); - }); - }); -}; - -exports.testStylePredictions = function (options) { - if (options.isRemote) { - assert.log("Can't directly test remote types locally."); - return; - } - - var context = options.requisition.conversionContext; - var types = options.requisition.system.types; - var resource = types.createType({ name: "resource", include: "text/css" }); - return resource.getLookup(context).then(function (opts) { - assert.ok(opts.length >= 1, "have css resources"); - - return util.promiseEach(opts, function (prediction) { - return checkPrediction(resource, prediction, context); - }); - }); -}; - -exports.testAllPredictions2 = function (options) { - if (options.isRemote) { - assert.log("Can't directly test remote types locally."); - return; - } - - var context = options.requisition.conversionContext; - var types = options.requisition.system.types; - - var scriptRes = types.createType({ name: "resource", include: "text/javascript" }); - return scriptRes.getLookup(context).then(function (scriptOptions) { - var styleRes = types.createType({ name: "resource", include: "text/css" }); - return styleRes.getLookup(context).then(function (styleOptions) { - var allRes = types.createType({ name: "resource" }); - return allRes.getLookup(context).then(function (allOptions) { - assert.is(scriptOptions.length + styleOptions.length, - allOptions.length, - "split"); - }); - }); - }); -}; - -exports.testAllPredictions3 = function (options) { - if (options.isRemote) { - assert.log("Can't directly test remote types locally."); - return; - } - - var context = options.requisition.conversionContext; - var types = options.requisition.system.types; - var res1 = types.createType({ name: "resource" }); - return res1.getLookup(context).then(function (options1) { - var res2 = types.createType("resource"); - return res2.getLookup(context).then(function (options2) { - assert.is(options1.length, options2.length, "type spec"); - }); - }); -}; - -function checkPrediction(res, prediction, context) { - var name = prediction.name; - var value = prediction.value; - - return res.parseString(name, context).then(function (conversion) { - assert.is(conversion.getStatus(), Status.VALID, "status VALID for " + name); - assert.is(conversion.value, value, "value for " + name); - - assert.is(typeof value.loadContents, "function", "resource for " + name); - assert.is(typeof value.element, "object", "resource for " + name); - - return Promise.resolve(res.stringify(value, context)).then(function (strung) { - assert.is(strung, name, "stringify for " + name); - }); - }); -}
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_short.js +++ /dev/null @@ -1,248 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_short.js"); -} - -// var helpers = require('./helpers'); - -exports.testBasic = function (options) { - return helpers.audit(options, [ - { - setup: "tshidden -v", - check: { - input: "tshidden -v", - hints: " <string>", - markup: "VVVVVVVVVII", - cursor: 11, - current: "visible", - status: "ERROR", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tshidden" }, - visible: { - value: undefined, - arg: " -v", - status: "INCOMPLETE" - }, - invisiblestring: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - invisibleboolean: { - value: false, - arg: "", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tshidden -v v", - check: { - input: "tshidden -v v", - hints: "", - markup: "VVVVVVVVVVVVV", - cursor: 13, - current: "visible", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tshidden" }, - visible: { - value: "v", - arg: " -v v", - status: "VALID", - message: "" - }, - invisiblestring: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - invisibleboolean: { - value: false, - arg: "", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tshidden -i i", - check: { - input: "tshidden -i i", - hints: " [options]", - markup: "VVVVVVVVVVVVV", - cursor: 13, - current: "invisiblestring", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tshidden" }, - visible: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - invisiblestring: { - value: "i", - arg: " -i i", - status: "VALID", - message: "" - }, - invisibleboolean: { - value: false, - arg: "", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tshidden -b", - check: { - input: "tshidden -b", - hints: " [options]", - markup: "VVVVVVVVVVV", - cursor: 11, - current: "invisibleboolean", - status: "VALID", - options: [ ], - message: "", - predictions: [ ], - unassigned: [ ], - args: { - command: { name: "tshidden" }, - visible: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - invisiblestring: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - invisibleboolean: { - value: true, - arg: " -b", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tshidden -j", - check: { - input: "tshidden -j", - hints: " [options]", - markup: "VVVVVVVVVEE", - cursor: 11, - current: "__unassigned", - status: "ERROR", - options: [ ], - message: "Can't use '-j'.", - predictions: [ ], - unassigned: [ " -j" ], - args: { - command: { name: "tshidden" }, - visible: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - invisiblestring: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - invisibleboolean: { - value: false, - arg: "", - status: "VALID", - message: "" - } - } - } - }, - { - setup: "tshidden -v jj -b --", - check: { - input: "tshidden -v jj -b --", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVEE", - cursor: 20, - current: "__unassigned", - status: "ERROR", - options: [ ], - message: "Can't use '--'.", - predictions: [ ], - unassigned: [ " --" ], - args: { - command: { name: "tshidden" }, - visible: { - value: "jj", - arg: " -v jj", - status: "VALID", - message: "" - }, - invisiblestring: { - value: undefined, - arg: "", - status: "VALID", - message: "" - }, - invisibleboolean: { - value: true, - arg: " -b", - status: "VALID", - message: "" - } - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_spell.js +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 2009 Panagiotis Astithas - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY - * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION - * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_spell.js"); -} - -// var assert = require('../testharness/assert'); -var spell = require("gcli/util/spell"); - -exports.testSpellerSimple = function (options) { - var alternatives = [ - "window", "document", "InstallTrigger", "requirejs", "require", "define", - "console", "location", "constructor", "getInterface", "external", "sidebar" - ]; - - assert.is(spell.correct("document", alternatives), "document"); - assert.is(spell.correct("documen", alternatives), "document"); - assert.is(spell.correct("ocument", alternatives), "document"); - assert.is(spell.correct("odcument", alternatives), "document"); - - assert.is(spell.correct("=========", alternatives), undefined); -}; - -exports.testRank = function (options) { - var distances = spell.rank("fred", [ "banana", "fred", "ed", "red", "FRED" ]); - - assert.is(distances.length, 5, "rank length"); - - assert.is(distances[0].name, "fred", "fred name #0"); - assert.is(distances[1].name, "FRED", "FRED name #1"); - assert.is(distances[2].name, "red", "red name #2"); - assert.is(distances[3].name, "ed", "ed name #3"); - assert.is(distances[4].name, "banana", "banana name #4"); - - assert.is(distances[0].dist, 0, "fred dist 0"); - assert.is(distances[1].dist, 4, "FRED dist 4"); - assert.is(distances[2].dist, 10, "red dist 10"); - assert.is(distances[3].dist, 20, "ed dist 20"); - assert.is(distances[4].dist, 100, "banana dist 100"); -}; - -exports.testRank2 = function (options) { - var distances = spell.rank("caps", [ "CAPS", "false" ]); - assert.is(JSON.stringify(distances), - '[{"name":"CAPS","dist":4},{"name":"false","dist":50}]', - 'spell.rank("caps", [ "CAPS", "false" ]'); -}; - -exports.testDistancePrefix = function (options) { - assert.is(spell.distancePrefix("fred", "freddy"), 0, "distancePrefix fred"); - assert.is(spell.distancePrefix("FRED", "freddy"), 4, "distancePrefix FRED"); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_split.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_split.js"); -} - -// var assert = require('../testharness/assert'); - -var cli = require("gcli/cli"); - -exports.testSplitSimple = function (options) { - var args = cli.tokenize("s"); - options.requisition._split(args); - assert.is(args.length, 0); - assert.is(options.requisition.commandAssignment.arg.text, "s"); -}; - -exports.testFlatCommand = function (options) { - var args = cli.tokenize("tsv"); - options.requisition._split(args); - assert.is(args.length, 0); - assert.is(options.requisition.commandAssignment.value.name, "tsv"); - - args = cli.tokenize("tsv a b"); - options.requisition._split(args); - assert.is(options.requisition.commandAssignment.value.name, "tsv"); - assert.is(args.length, 2); - assert.is(args[0].text, "a"); - assert.is(args[1].text, "b"); -}; - -exports.testJavascript = function (options) { - if (!options.requisition.system.commands.get("{")) { - assert.log("Skipping testJavascript because { is not registered"); - return; - } - - var args = cli.tokenize("{"); - options.requisition._split(args); - assert.is(args.length, 1); - assert.is(args[0].text, ""); - assert.is(options.requisition.commandAssignment.arg.text, ""); - assert.is(options.requisition.commandAssignment.value.name, "{"); -}; - -// BUG 663081 - add tests for sub commands
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_string.js +++ /dev/null @@ -1,270 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_string.js"); -} - -// var helpers = require('./helpers'); - -exports.testNewLine = function (options) { - return helpers.audit(options, [ - { - setup: "echo a\\nb", - check: { - input: "echo a\\nb", - hints: "", - markup: "VVVVVVVVV", - cursor: 9, - current: "message", - status: "VALID", - args: { - command: { name: "echo" }, - message: { - value: "a\nb", - arg: " a\\nb", - status: "VALID", - message: "" - } - } - } - } - ]); -}; - -exports.testTab = function (options) { - return helpers.audit(options, [ - { - setup: "echo a\\tb", - check: { - input: "echo a\\tb", - hints: "", - markup: "VVVVVVVVV", - cursor: 9, - current: "message", - status: "VALID", - args: { - command: { name: "echo" }, - message: { - value: "a\tb", - arg: " a\\tb", - status: "VALID", - message: "" - } - } - } - } - ]); -}; - -exports.testEscape = function (options) { - return helpers.audit(options, [ - { - // What's typed is actually: - // tsrsrsr a\\ b c - setup: "tsrsrsr a\\\\ b c", - check: { - input: "tsrsrsr a\\\\ b c", - hints: "", - markup: "VVVVVVVVVVVVVVV", - status: "VALID", - message: "", - args: { - command: { name: "tsrsrsr" }, - p1: { value: "a\\", arg: " a\\\\", status: "VALID", message: "" }, - p2: { value: "b", arg: " b", status: "VALID", message: "" }, - p3: { value: "c", arg: " c", status: "VALID", message: "" }, - } - } - }, - { - // What's typed is actually: - // tsrsrsr abc\\ndef asd asd - setup: "tsrsrsr abc\\\\ndef asd asd", - check: { - input: "tsrsrsr abc\\\\ndef asd asd", - hints: "", - markup: "VVVVVVVVVVVVVVVVVVVVVVVVV", - status: "VALID", - message: "", - args: { - command: { name: "tsrsrsr" }, - p1: { - value: "abc\\ndef", - arg: " abc\\\\ndef", - status: "VALID", - message: "" - }, - p2: { value: "asd", arg: " asd", status: "VALID", message: "" }, - p3: { value: "asd", arg: " asd", status: "VALID", message: "" }, - } - } - } - ]); -}; - -exports.testBlank = function (options) { - return helpers.audit(options, [ - { - setup: 'tsrsrsr a "" c', - check: { - input: 'tsrsrsr a "" c', - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "p3", - status: "ERROR", - message: "", - args: { - command: { name: "tsrsrsr" }, - p1: { - value: "a", - arg: " a", - status: "VALID", - message: "" - }, - p2: { - value: undefined, - arg: ' ""', - status: "INCOMPLETE" - }, - p3: { - value: "c", - arg: " c", - status: "VALID", - message: "" - } - } - } - }, - { - setup: 'tsrsrsr a b ""', - check: { - input: 'tsrsrsr a b ""', - hints: "", - markup: "VVVVVVVVVVVVVV", - cursor: 14, - current: "p3", - status: "VALID", - message: "", - args: { - command: { name: "tsrsrsr" }, - p1: { - value: "a", - arg: " a", - status:"VALID", - message: "" }, - p2: { - value: "b", - arg: " b", - status: "VALID", - message: "" - }, - p3: { - value: "", - arg: ' ""', - status: "VALID", - message: "" - } - } - } - } - ]); -}; - -exports.testBlankWithParam = function (options) { - return helpers.audit(options, [ - { - setup: "tsrsrsr a --p3", - check: { - input: "tsrsrsr a --p3", - hints: " <string> <p2>", - markup: "VVVVVVVVVVVVVVV", - cursor: 15, - current: "p3", - status: "ERROR", - message: "", - args: { - command: { name: "tsrsrsr" }, - p1: { value: "a", arg: " a", status: "VALID", message: "" }, - p2: { value: undefined, arg: "", status: "INCOMPLETE" }, - p3: { value: "", arg: " --p3", status: "VALID", message: "" }, - } - } - }, - { - setup: "tsrsrsr a --p3 ", - check: { - input: "tsrsrsr a --p3 ", - hints: "<string> <p2>", - markup: "VVVVVVVVVVVVVVVV", - cursor: 16, - current: "p3", - status: "ERROR", - message: "", - args: { - command: { name: "tsrsrsr" }, - p1: { value: "a", arg: " a", status: "VALID", message: "" }, - p2: { value: undefined, arg: "", status: "INCOMPLETE" }, - p3: { value: "", arg: " --p3 ", status: "VALID", message: "" }, - } - } - }, - { - setup: 'tsrsrsr a --p3 "', - check: { - input: 'tsrsrsr a --p3 "', - hints: " <p2>", - markup: "VVVVVVVVVVVVVVVVV", - cursor: 17, - current: "p3", - status: "ERROR", - message: "", - args: { - command: { name: "tsrsrsr" }, - p1: { value: "a", arg: " a", status: "VALID", message: "" }, - p2: { value: undefined, arg: "", status: "INCOMPLETE" }, - p3: { value: "", arg: ' --p3 "', status: "VALID", message: "" }, - } - } - }, - { - setup: 'tsrsrsr a --p3 ""', - check: { - input: 'tsrsrsr a --p3 ""', - hints: " <p2>", - markup: "VVVVVVVVVVVVVVVVVV", - cursor: 18, - current: "p3", - status: "ERROR", - message: "", - args: { - command: { name: "tsrsrsr" }, - p1: { value: "a", arg: " a", status: "VALID", message: "" }, - p2: { value: undefined, arg: "", status: "INCOMPLETE" }, - p3: { value: "", arg: ' --p3 ""', status: "VALID", message: "" }, - } - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_tokenize.js +++ /dev/null @@ -1,290 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_tokenize.js"); -} - -// var assert = require('../testharness/assert'); -var cli = require("gcli/cli"); - -exports.testBlanks = function (options) { - var args; - - args = cli.tokenize(""); - assert.is(args.length, 1); - assert.is(args[0].text, ""); - assert.is(args[0].prefix, ""); - assert.is(args[0].suffix, ""); - - args = cli.tokenize(" "); - assert.is(args.length, 1); - assert.is(args[0].text, ""); - assert.is(args[0].prefix, " "); - assert.is(args[0].suffix, ""); -}; - -exports.testTokSimple = function (options) { - var args; - - args = cli.tokenize("s"); - assert.is(args.length, 1); - assert.is(args[0].text, "s"); - assert.is(args[0].prefix, ""); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "Argument"); - - args = cli.tokenize("s s"); - assert.is(args.length, 2); - assert.is(args[0].text, "s"); - assert.is(args[0].prefix, ""); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "Argument"); - assert.is(args[1].text, "s"); - assert.is(args[1].prefix, " "); - assert.is(args[1].suffix, ""); - assert.is(args[1].type, "Argument"); -}; - -exports.testJavascript = function (options) { - var args; - - args = cli.tokenize("{x}"); - assert.is(args.length, 1); - assert.is(args[0].text, "x"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - - args = cli.tokenize("{ x }"); - assert.is(args.length, 1); - assert.is(args[0].text, "x"); - assert.is(args[0].prefix, "{ "); - assert.is(args[0].suffix, " }"); - assert.is(args[0].type, "ScriptArgument"); - - args = cli.tokenize("{x} {y}"); - assert.is(args.length, 2); - assert.is(args[0].text, "x"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - assert.is(args[1].text, "y"); - assert.is(args[1].prefix, " {"); - assert.is(args[1].suffix, "}"); - assert.is(args[1].type, "ScriptArgument"); - - args = cli.tokenize("{x}{y}"); - assert.is(args.length, 2); - assert.is(args[0].text, "x"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - assert.is(args[1].text, "y"); - assert.is(args[1].prefix, "{"); - assert.is(args[1].suffix, "}"); - assert.is(args[1].type, "ScriptArgument"); - - args = cli.tokenize("{"); - assert.is(args.length, 1); - assert.is(args[0].text, ""); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "ScriptArgument"); - - args = cli.tokenize("{ "); - assert.is(args.length, 1); - assert.is(args[0].text, ""); - assert.is(args[0].prefix, "{ "); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "ScriptArgument"); - - args = cli.tokenize("{x"); - assert.is(args.length, 1); - assert.is(args[0].text, "x"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "ScriptArgument"); -}; - -exports.testRegularNesting = function (options) { - var args; - - args = cli.tokenize('{"x"}'); - assert.is(args.length, 1); - assert.is(args[0].text, '"x"'); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - - args = cli.tokenize("{'x'}"); - assert.is(args.length, 1); - assert.is(args[0].text, "'x'"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - - args = cli.tokenize('"{x}"'); - assert.is(args.length, 1); - assert.is(args[0].text, "{x}"); - assert.is(args[0].prefix, '"'); - assert.is(args[0].suffix, '"'); - assert.is(args[0].type, "Argument"); - - args = cli.tokenize("'{x}'"); - assert.is(args.length, 1); - assert.is(args[0].text, "{x}"); - assert.is(args[0].prefix, "'"); - assert.is(args[0].suffix, "'"); - assert.is(args[0].type, "Argument"); -}; - -exports.testDeepNesting = function (options) { - var args; - - args = cli.tokenize("{{}}"); - assert.is(args.length, 1); - assert.is(args[0].text, "{}"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - - args = cli.tokenize("{{x} {y}}"); - assert.is(args.length, 1); - assert.is(args[0].text, "{x} {y}"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - - args = cli.tokenize("{{w} {{{x}}}} {y} {{{z}}}"); - - assert.is(args.length, 3); - - assert.is(args[0].text, "{w} {{{x}}}"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - - assert.is(args[1].text, "y"); - assert.is(args[1].prefix, " {"); - assert.is(args[1].suffix, "}"); - assert.is(args[1].type, "ScriptArgument"); - - assert.is(args[2].text, "{{z}}"); - assert.is(args[2].prefix, " {"); - assert.is(args[2].suffix, "}"); - assert.is(args[2].type, "ScriptArgument"); - - args = cli.tokenize("{{w} {{{x}}} {y} {{{z}}}"); - - assert.is(args.length, 1); - - assert.is(args[0].text, "{w} {{{x}}} {y} {{{z}}}"); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "ScriptArgument"); -}; - -exports.testStrangeNesting = function (options) { - var args; - - // Note: When we get real JS parsing this should break - args = cli.tokenize('{"x}"}'); - - assert.is(args.length, 2); - - assert.is(args[0].text, '"x'); - assert.is(args[0].prefix, "{"); - assert.is(args[0].suffix, "}"); - assert.is(args[0].type, "ScriptArgument"); - - assert.is(args[1].text, "}"); - assert.is(args[1].prefix, '"'); - assert.is(args[1].suffix, ""); - assert.is(args[1].type, "Argument"); -}; - -exports.testComplex = function (options) { - var args; - - args = cli.tokenize(" 1234 '12 34'"); - - assert.is(args.length, 2); - - assert.is(args[0].text, "1234"); - assert.is(args[0].prefix, " "); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "Argument"); - - assert.is(args[1].text, "12 34"); - assert.is(args[1].prefix, " '"); - assert.is(args[1].suffix, "'"); - assert.is(args[1].type, "Argument"); - - args = cli.tokenize('12\'34 "12 34" \\'); // 12'34 "12 34" \ - - assert.is(args.length, 3); - - assert.is(args[0].text, "12'34"); - assert.is(args[0].prefix, ""); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "Argument"); - - assert.is(args[1].text, "12 34"); - assert.is(args[1].prefix, ' "'); - assert.is(args[1].suffix, '"'); - assert.is(args[1].type, "Argument"); - - assert.is(args[2].text, "\\"); - assert.is(args[2].prefix, " "); - assert.is(args[2].suffix, ""); - assert.is(args[2].type, "Argument"); -}; - -exports.testPathological = function (options) { - var args; - - args = cli.tokenize('a\\ b \\t\\n\\r \\\'x\\\" \'d'); // a_b \t\n\r \'x\" 'd - - assert.is(args.length, 4); - - assert.is(args[0].text, "a\\ b"); - assert.is(args[0].prefix, ""); - assert.is(args[0].suffix, ""); - assert.is(args[0].type, "Argument"); - - assert.is(args[1].text, "\\t\\n\\r"); - assert.is(args[1].prefix, " "); - assert.is(args[1].suffix, ""); - assert.is(args[1].type, "Argument"); - - assert.is(args[2].text, '\\\'x\\"'); - assert.is(args[2].prefix, " "); - assert.is(args[2].suffix, ""); - assert.is(args[2].type, "Argument"); - - assert.is(args[3].text, "d"); - assert.is(args[3].prefix, " '"); - assert.is(args[3].suffix, ""); - assert.is(args[3].type, "Argument"); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_tooltip.js +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_tooltip.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -exports.testActivate = function (options) { - return helpers.audit(options, [ - { - setup: " ", - check: { - input: " ", - hints: "", - markup: "V", - cursor: 1, - current: "__command", - status: "ERROR", - message: "", - unassigned: [ ], - outputState: "false:default", - tooltipState: "false:default" - } - }, - { - setup: "tsb ", - check: { - input: "tsb ", - hints: "false", - markup: "VVVV", - cursor: 4, - current: "toggle", - status: "VALID", - options: [ "false", "true" ], - message: "", - predictions: [ "false", "true" ], - unassigned: [ ], - outputState: "false:default", - tooltipState: "true:importantFieldFlag" - } - }, - { - setup: "tsb t", - check: { - input: "tsb t", - hints: "rue", - markup: "VVVVI", - cursor: 5, - current: "toggle", - status: "ERROR", - options: [ "true" ], - message: "", - predictions: [ "true" ], - unassigned: [ ], - outputState: "false:default", - tooltipState: "true:importantFieldFlag" - } - }, - { - setup: "tsb tt", - check: { - input: "tsb tt", - hints: " -> true", - markup: "VVVVII", - cursor: 6, - current: "toggle", - status: "ERROR", - options: [ "true" ], - message: "", - predictions: [ "true" ], - unassigned: [ ], - outputState: "false:default", - tooltipState: "true:importantFieldFlag" - } - }, - { - setup: "wxqy", - check: { - input: "wxqy", - hints: "", - markup: "EEEE", - cursor: 4, - current: "__command", - status: "ERROR", - options: [ ], - message: "Can't use 'wxqy'.", - predictions: [ ], - unassigned: [ ], - outputState: "false:default", - tooltipState: "true:isError" - } - }, - { - setup: "", - check: { - input: "", - hints: "", - markup: "", - cursor: 0, - current: "__command", - status: "ERROR", - message: "", - unassigned: [ ], - outputState: "false:default", - tooltipState: "false:default" - } - } - ]); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_types.js +++ /dev/null @@ -1,118 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_types.js"); -} - -// var assert = require('../testharness/assert'); -var util = require("gcli/util/util"); - -function forEachType(options, templateTypeSpec, callback) { - var types = options.requisition.system.types; - return util.promiseEach(types.getTypeNames(), function (name) { - var typeSpec = {}; - util.copyProperties(templateTypeSpec, typeSpec); - typeSpec.name = name; - typeSpec.requisition = options.requisition; - - // Provide some basic defaults to help selection/delegate/array work - if (name === "selection") { - typeSpec.data = [ "a", "b" ]; - } - else if (name === "delegate") { - typeSpec.delegateType = function () { - return "string"; - }; - } - else if (name === "array") { - typeSpec.subtype = "string"; - } - else if (name === "remote") { - return; - } - else if (name === "union") { - typeSpec.alternatives = [{ name: "string" }]; - } - else if (options.isRemote) { - if (name === "node" || name === "nodelist") { - return; - } - } - - var type = types.createType(typeSpec); - var reply = callback(type); - return Promise.resolve(reply); - }); -} - -exports.testDefault = function (options) { - return forEachType(options, {}, function (type) { - var context = options.requisition.executionContext; - var blank = type.getBlank(context).value; - - // boolean and array types are exempt from needing undefined blank values - if (type.name === "boolean") { - assert.is(blank, false, "blank boolean is false"); - } - else if (type.name === "array") { - assert.ok(Array.isArray(blank), "blank array is array"); - assert.is(blank.length, 0, "blank array is empty"); - } - else if (type.name === "nodelist") { - assert.ok(typeof blank.item, "function", "blank.item is function"); - assert.is(blank.length, 0, "blank nodelist is empty"); - } - else { - assert.is(blank, undefined, "default defined for " + type.name); - } - }); -}; - -exports.testNullDefault = function (options) { - var context = null; // Is this test still valid with a null context? - - return forEachType(options, { defaultValue: null }, function (type) { - var reply = type.stringify(null, context); - return Promise.resolve(reply).then(function (str) { - assert.is(str, "", "stringify(null) for " + type.name); - }); - }); -}; - -exports.testGetSpec = function (options) { - return forEachType(options, {}, function (type) { - if (type.name === "param") { - return; - } - - var spec = type.getSpec("cmd", "param"); - assert.ok(spec != null, "non null spec for " + type.name); - - var str = JSON.stringify(spec); - assert.ok(str != null, "serializable spec for " + type.name); - - var example = options.requisition.system.types.createType(spec); - assert.ok(example != null, "creatable spec for " + type.name); - }); -};
deleted file mode 100644 --- a/devtools/client/commandline/test/browser_gcli_union.js +++ /dev/null @@ -1,173 +0,0 @@ -/* - * Copyright 2012, Mozilla Foundation and contributors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -"use strict"; - -// THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT -// PLEASE TALK TO SOMEONE IN DEVELOPER TOOLS BEFORE EDITING IT - -const exports = {}; - -function test() { - helpers.runTestModule(exports, "browser_gcli_union.js"); -} - -// var assert = require('../testharness/assert'); -// var helpers = require('./helpers'); - -exports.testDefault = function (options) { - return helpers.audit(options, [ - { - setup: "unionc1", - check: { - input: "unionc1", - markup: "VVVVVVV", - hints: " <first>", - status: "ERROR", - args: { - first: { - value: undefined, - arg: "", - status: "INCOMPLETE" - } - } - } - }, - { - setup: "unionc1 three", - check: { - input: "unionc1 three", - markup: "VVVVVVVVVVVVV", - hints: "", - status: "VALID", - args: { - first: { - value: function (data) { - assert.is(Object.keys(data).length, 2, "union3 Object.keys"); - assert.is(data.type, "string", "union3 val type"); - assert.is(data.string, "three", "union3 val string"); - }, - arg: " three", - status: "VALID" - } - } - }, - exec: { - output: [ - /"type": ?"string"/, - /"string": ?"three"/ - ] - }, - post: function (output, text) { - var data = output.data.first; - assert.is(Object.keys(data).length, 2, "union3 Object.keys"); - assert.is(data.type, "string", "union3 val type"); - assert.is(data.string, "three", "union3 val string"); - } - }, - { - setup: "unionc1 one", - check: { - input: "unionc1 one", - markup: "VVVVVVVVVVV", - hints: "", - status: "VALID", - args: { - first: { - value: function (data) { - assert.is(Object.keys(data).length, 2, "union1 Object.keys"); - assert.is(data.type, "selection", "union1 val type"); - assert.is(data.selection, 1, "union1 val selection"); - }, - arg: " one", - status: "VALID" - } - } - }, - exec: { - output: [ - /"type": ?"selection"/, - /"selection": ?1/ - ] - }, - post: function (output, text) { - var data = output.data.first; - assert.is(Object.keys(data).length, 2, "union1 Object.keys"); - assert.is(data.type, "selection", "union1 val type"); - assert.is(data.selection, 1, "union1 val selection"); - } - }, - { - skipIf: options.isPhantomjs, // PhantomJS gets predictions wrong - setup: "unionc1 5", - check: { - input: "unionc1 5", - markup: "VVVVVVVVV", - hints: " -> two", - predictions: [ "two" ], - status: "VALID", - args: { - first: {