summaryrefslogtreecommitdiffstats
path: root/browser/components/sessionstore/test/browser_480893.js
blob: e3ddb39b71db9dd0ca732f5315f34fb5a313883e (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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
"use strict";

/**
 * Tests that we get sent to the right page when the user clicks
 * the "Close" button in about:sessionrestore
 */
add_task(function*() {
  yield SpecialPowers.pushPrefEnv({
    "set": [
      ["browser.startup.page", 0],
    ]
  });

  let tab = gBrowser.addTab("about:sessionrestore");
  gBrowser.selectedTab = tab;
  let browser = tab.linkedBrowser;
  yield BrowserTestUtils.browserLoaded(browser, false, "about:sessionrestore");

  let doc = browser.contentDocument;

  // Click on the "Close" button after about:sessionrestore is loaded.
  doc.getElementById("errorCancel").click();

  yield BrowserTestUtils.browserLoaded(browser, false, "about:blank");

  // Test that starting a new session loads the homepage (set to http://mochi.test:8888)
  // if Firefox is configured to display a homepage at startup (browser.startup.page = 1)
  let homepage = "http://mochi.test:8888/";
  yield SpecialPowers.pushPrefEnv({
    "set": [
      ["browser.startup.homepage", homepage],
      ["browser.startup.page", 1],
    ]
  });

  browser.loadURI("about:sessionrestore");
  yield BrowserTestUtils.browserLoaded(browser, false, "about:sessionrestore");
  doc = browser.contentDocument;

  // Click on the "Close" button after about:sessionrestore is loaded.
  doc.getElementById("errorCancel").click();
  yield BrowserTestUtils.browserLoaded(browser);

  is(browser.currentURI.spec, homepage, "loaded page is the homepage");

  yield BrowserTestUtils.removeTab(tab);
});