summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/urlbar/browser_urlbarStop.js
blob: 8cf9d8017e8a39de682d89fe69725e6021adf99e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
"use strict";

const goodURL = "http://mochi.test:8888/";
const badURL = "http://mochi.test:8888/whatever.html";

add_task(function* () {
  gBrowser.selectedTab = gBrowser.addTab(goodURL);
  yield BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser);
  is(gURLBar.textValue, gURLBar.trimValue(goodURL), "location bar reflects loaded page");

  yield typeAndSubmitAndStop(badURL);
  is(gURLBar.textValue, gURLBar.trimValue(goodURL), "location bar reflects loaded page after stop()");
  gBrowser.removeCurrentTab();

  gBrowser.selectedTab = gBrowser.addTab("about:blank");
  is(gURLBar.textValue, "", "location bar is empty");

  yield typeAndSubmitAndStop(badURL);
  is(gURLBar.textValue, gURLBar.trimValue(badURL), "location bar reflects stopped page in an empty tab");
  gBrowser.removeCurrentTab();
});

function* typeAndSubmitAndStop(url) {
  yield promiseAutocompleteResultPopup(url, window, true);
  is(gURLBar.textValue, gURLBar.trimValue(url), "location bar reflects loading page");

  let promise = waitForDocLoadAndStopIt(url, gBrowser.selectedBrowser, false);
  gURLBar.handleCommand();
  yield promise;
}