--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_history_persist.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_history_persist.js
@@ -11,46 +11,45 @@
requestLongerTimeout(2);
const TEST_URI = "data:text/html;charset=utf-8,Web Console test for " +
"persisting history - bug 943306";
const INPUT_HISTORY_COUNT = 10;
add_task(function* () {
info("Setting custom input history pref to " + INPUT_HISTORY_COUNT);
- Services.prefs.setIntPref("devtools.webconsole.inputHistoryCount",
- INPUT_HISTORY_COUNT);
+ Services.prefs.setIntPref("devtools.webconsole.inputHistoryCount", INPUT_HISTORY_COUNT);
// First tab: run a bunch of commands and then make sure that you can
// navigate through their history.
- yield loadTab(TEST_URI);
- let hud1 = yield openConsole();
- is(JSON.stringify(hud1.jsterm.history), "[]",
- "No history on first tab initially");
+ let hud1 = yield openNewTabAndConsole(TEST_URI);
+
+ // Clearing history that might have been set in previous tests.
+ yield hud1.jsterm.clearHistory();
+
+ is(JSON.stringify(hud1.jsterm.history), "[]", "No history on first tab initially");
yield populateInputHistory(hud1);
is(JSON.stringify(hud1.jsterm.history),
'["0","1","2","3","4","5","6","7","8","9"]',
"First tab has populated history");
// Second tab: Just make sure that you can navigate through the history
// generated by the first tab.
- yield loadTab(TEST_URI);
- let hud2 = yield openConsole();
+ let hud2 = yield openNewTabAndConsole(TEST_URI);
is(JSON.stringify(hud2.jsterm.history),
'["0","1","2","3","4","5","6","7","8","9"]',
"Second tab has populated history");
- yield testNaviatingHistoryInUI(hud2);
+ yield testNavigatingHistoryInUI(hud2);
is(JSON.stringify(hud2.jsterm.history),
'["0","1","2","3","4","5","6","7","8","9",""]',
"An empty entry has been added in the second tab due to history perusal");
// Third tab: Should have the same history as first tab, but if we run a
// command, then the history of the first and second shouldn't be affected
- yield loadTab(TEST_URI);
- let hud3 = yield openConsole();
+ let hud3 = yield openNewTabAndConsole(TEST_URI);
is(JSON.stringify(hud3.jsterm.history),
'["0","1","2","3","4","5","6","7","8","9"]',
"Third tab has populated history");
// Set input value separately from execute so UP arrow accurately navigates
// history.
hud3.jsterm.setInputValue('"hello from third tab"');
hud3.jsterm.execute();
@@ -63,28 +62,25 @@ add_task(function* () {
"Second tab history hasn't changed due to command in third tab");
is(JSON.stringify(hud3.jsterm.history),
'["1","2","3","4","5","6","7","8","9","\\"hello from third tab\\""]',
"Third tab has updated history (and purged the first result) after " +
"running a command");
// Fourth tab: Should have the latest command from the third tab, followed
// by the rest of the history from the first tab.
- yield loadTab(TEST_URI);
- let hud4 = yield openConsole();
+ let hud4 = yield openNewTabAndConsole(TEST_URI);
is(JSON.stringify(hud4.jsterm.history),
'["1","2","3","4","5","6","7","8","9","\\"hello from third tab\\""]',
"Fourth tab has most recent history");
yield hud4.jsterm.clearHistory();
- is(JSON.stringify(hud4.jsterm.history), "[]",
- "Clearing history for a tab works");
+ is(JSON.stringify(hud4.jsterm.history), "[]", "Clearing history for a tab works");
- yield loadTab(TEST_URI);
- let hud5 = yield openConsole();
+ let hud5 = yield openNewTabAndConsole(TEST_URI);
is(JSON.stringify(hud5.jsterm.history), "[]",
"Clearing history carries over to a new tab");
info("Clearing custom input history pref");
Services.prefs.clearUserPref("devtools.webconsole.inputHistoryCount");
});
/**
@@ -93,25 +89,25 @@ add_task(function* () {
*/
function* populateInputHistory(hud) {
let jsterm = hud.jsterm;
for (let i = 0; i < INPUT_HISTORY_COUNT; i++) {
// Set input value separately from execute so UP arrow accurately navigates
// history.
jsterm.setInputValue(i);
- jsterm.execute();
+ yield jsterm.execute();
}
}
/**
* Check pressing up results in history traversal like:
* [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
*/
-function* testNaviatingHistoryInUI(hud) {
+function testNavigatingHistoryInUI(hud) {
let jsterm = hud.jsterm;
jsterm.focus();
// Count backwards from original input and make sure that pressing up
// restores this.
for (let i = INPUT_HISTORY_COUNT - 1; i >= 0; i--) {
EventUtils.synthesizeKey("VK_UP", {});
is(jsterm.getInputValue(), i, "Pressing up restores last input");