|
1 /* |
|
2 * Copyright 2012, Mozilla Foundation and contributors |
|
3 * |
|
4 * Licensed under the Apache License, Version 2.0 (the "License"); |
|
5 * you may not use this file except in compliance with the License. |
|
6 * You may obtain a copy of the License at |
|
7 * |
|
8 * http://www.apache.org/licenses/LICENSE-2.0 |
|
9 * |
|
10 * Unless required by applicable law or agreed to in writing, software |
|
11 * distributed under the License is distributed on an "AS IS" BASIS, |
|
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
13 * See the License for the specific language governing permissions and |
|
14 * limitations under the License. |
|
15 */ |
|
16 |
|
17 'use strict'; |
|
18 // <INJECTED SOURCE:START> |
|
19 |
|
20 // THIS FILE IS GENERATED FROM SOURCE IN THE GCLI PROJECT |
|
21 // DO NOT EDIT IT DIRECTLY |
|
22 |
|
23 var exports = {}; |
|
24 |
|
25 var TEST_URI = "data:text/html;charset=utf-8,<p id='gcli-input'>gcli-testAsync.js</p>"; |
|
26 |
|
27 function test() { |
|
28 return Task.spawn(function() { |
|
29 let options = yield helpers.openTab(TEST_URI); |
|
30 yield helpers.openToolbar(options); |
|
31 gcli.addItems(mockCommands.items); |
|
32 |
|
33 yield helpers.runTests(options, exports); |
|
34 |
|
35 gcli.removeItems(mockCommands.items); |
|
36 yield helpers.closeToolbar(options); |
|
37 yield helpers.closeTab(options); |
|
38 }).then(finish, helpers.handleError); |
|
39 } |
|
40 |
|
41 // <INJECTED SOURCE:END> |
|
42 |
|
43 // var helpers = require('./helpers'); |
|
44 |
|
45 exports.testBasic = function(options) { |
|
46 return helpers.audit(options, [ |
|
47 { |
|
48 setup: 'tsslo', |
|
49 check: { |
|
50 input: 'tsslo', |
|
51 hints: 'w', |
|
52 markup: 'IIIII', |
|
53 cursor: 5, |
|
54 current: '__command', |
|
55 status: 'ERROR', |
|
56 predictions: ['tsslow'], |
|
57 unassigned: [ ] |
|
58 } |
|
59 }, |
|
60 { |
|
61 setup: 'tsslo<TAB>', |
|
62 check: { |
|
63 input: 'tsslow ', |
|
64 hints: 'Shalom', |
|
65 markup: 'VVVVVVV', |
|
66 cursor: 7, |
|
67 current: 'hello', |
|
68 status: 'ERROR', |
|
69 predictions: [ |
|
70 'Shalom', 'Namasté', 'Hallo', 'Dydd-da', 'Chào', 'Hej', |
|
71 'Saluton', 'Sawubona' |
|
72 ], |
|
73 unassigned: [ ], |
|
74 args: { |
|
75 command: { name: 'tsslow' }, |
|
76 hello: { |
|
77 value: undefined, |
|
78 arg: '', |
|
79 status: 'INCOMPLETE' |
|
80 }, |
|
81 } |
|
82 } |
|
83 }, |
|
84 { |
|
85 setup: 'tsslow S', |
|
86 check: { |
|
87 input: 'tsslow S', |
|
88 hints: 'halom', |
|
89 markup: 'VVVVVVVI', |
|
90 cursor: 8, |
|
91 current: 'hello', |
|
92 status: 'ERROR', |
|
93 predictions: [ 'Shalom', 'Saluton', 'Sawubona', 'Namasté' ], |
|
94 unassigned: [ ], |
|
95 args: { |
|
96 command: { name: 'tsslow' }, |
|
97 hello: { |
|
98 value: undefined, |
|
99 arg: ' S', |
|
100 status: 'INCOMPLETE' |
|
101 }, |
|
102 } |
|
103 } |
|
104 }, |
|
105 { |
|
106 setup: 'tsslow S<TAB>', |
|
107 check: { |
|
108 input: 'tsslow Shalom ', |
|
109 hints: '', |
|
110 markup: 'VVVVVVVVVVVVVV', |
|
111 cursor: 14, |
|
112 current: 'hello', |
|
113 status: 'VALID', |
|
114 predictions: [ 'Shalom' ], |
|
115 unassigned: [ ], |
|
116 args: { |
|
117 command: { name: 'tsslow' }, |
|
118 hello: { |
|
119 value: 'Shalom', |
|
120 arg: ' Shalom ', |
|
121 status: 'VALID', |
|
122 message: '' |
|
123 }, |
|
124 } |
|
125 } |
|
126 } |
|
127 ]); |
|
128 }; |