browser/devtools/commandline/test/browser_gcli_history.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:26b4556b6879
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-testHistory.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 assert = require('../testharness/assert');
44 var History = require('gcli/ui/history').History;
45
46 exports.testSimpleHistory = function (options) {
47 var history = new History({});
48 history.add('foo');
49 history.add('bar');
50 assert.is(history.backward(), 'bar');
51 assert.is(history.backward(), 'foo');
52
53 // Adding to the history again moves us back to the start of the history.
54 history.add('quux');
55 assert.is(history.backward(), 'quux');
56 assert.is(history.backward(), 'bar');
57 assert.is(history.backward(), 'foo');
58 };
59
60 exports.testBackwardsPastIndex = function (options) {
61 var history = new History({});
62 history.add('foo');
63 history.add('bar');
64 assert.is(history.backward(), 'bar');
65 assert.is(history.backward(), 'foo');
66
67 // Moving backwards past recorded history just keeps giving you the last
68 // item.
69 assert.is(history.backward(), 'foo');
70 };
71
72 exports.testForwardsPastIndex = function (options) {
73 var history = new History({});
74 history.add('foo');
75 history.add('bar');
76 assert.is(history.backward(), 'bar');
77 assert.is(history.backward(), 'foo');
78
79 // Going forward through the history again.
80 assert.is(history.forward(), 'bar');
81
82 // 'Present' time.
83 assert.is(history.forward(), '');
84
85 // Going to the 'future' just keeps giving us the empty string.
86 assert.is(history.forward(), '');
87 };

mercurial