tenfourfox/devtools/client/commandline/test/browser_cmd_addon.js
Cameron Kaiser c9b2922b70 hello FPR
2017-04-19 00:56:45 -07:00

135 lines
3.4 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
// Tests that the addon commands works as they should
function test() {
return Task.spawn(spawnTest).then(finish, helpers.handleError);
}
function* spawnTest() {
let options = yield helpers.openTab("about:blank");
yield helpers.openToolbar(options);
yield helpers.audit(options, [
{
setup: 'addon list dictionary',
check: {
input: 'addon list dictionary',
hints: '',
markup: 'VVVVVVVVVVVVVVVVVVVVV',
status: 'VALID'
},
exec: {
output: 'There are no add-ons of that type installed.'
}
},
{
setup: 'addon list extension',
check: {
input: 'addon list extension',
hints: '',
markup: 'VVVVVVVVVVVVVVVVVVVV',
status: 'VALID'
},
exec: {
output: [/The following/, /Mochitest/, /Special Powers/]
}
},
{
setup: 'addon list locale',
check: {
input: 'addon list locale',
hints: '',
markup: 'VVVVVVVVVVVVVVVVV',
status: 'VALID'
},
exec: {
output: 'There are no add-ons of that type installed.'
}
},
{
setup: 'addon list plugin',
check: {
input: 'addon list plugin',
hints: '',
markup: 'VVVVVVVVVVVVVVVVV',
status: 'VALID'
},
exec: {
output: [/Test Plug-in/, /Second Test Plug-in/]
}
},
{
setup: 'addon list theme',
check: {
input: 'addon list theme',
hints: '',
markup: 'VVVVVVVVVVVVVVVV',
status: 'VALID'
},
exec: {
output: [/following themes/, /Default/]
}
},
{
setup: 'addon list all',
check: {
input: 'addon list all',
hints: '',
markup: 'VVVVVVVVVVVVVV',
status: 'VALID'
},
exec: {
output: [/The following/, /Default/, /Mochitest/, /Test Plug-in/,
/Second Test Plug-in/, /Special Powers/]
}
},
{
setup: 'addon disable Test_Plug-in_1.0.0.0',
check: {
input: 'addon disable Test_Plug-in_1.0.0.0',
hints: '',
markup: 'VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV',
status: 'VALID'
},
exec: {
output: 'Test Plug-in 1.0.0.0 disabled.'
}
},
{
setup: 'addon disable WRONG',
check: {
input: 'addon disable WRONG',
hints: '',
markup: 'VVVVVVVVVVVVVVEEEEE',
status: 'ERROR'
}
},
{
setup: 'addon enable Test_Plug-in_1.0.0.0',
check: {
input: 'addon enable Test_Plug-in_1.0.0.0',
hints: '',
markup: 'VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV',
status: 'VALID',
args: {
command: { name: 'addon enable' },
addon: {
value: function(addon) {
is(addon.name, 'Test Plug-in', 'test plugin name');
},
status: 'VALID'
}
}
},
exec: {
output: 'Test Plug-in 1.0.0.0 enabled.'
}
}
]);
yield helpers.closeToolbar(options);
yield helpers.closeTab(options);
}