mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-06 15:58:39 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
286
devtools/client/commandline/test/browser_gcli_canon.js
Normal file
286
devtools/client/commandline/test/browser_gcli_canon.js
Normal file
|
|
@ -0,0 +1,286 @@
|
|||
/*
|
||||
* 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");
|
||||
}
|
||||
}
|
||||
]);
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue