summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/tabs/browser_bug580956.js
blob: 1aa6aae129c87c108a7fb524b4b7ff66182feba3 (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
function numClosedTabs() {
  return SessionStore.getClosedTabCountForWindow(window);
}

function isUndoCloseEnabled() {
  updateTabContextMenu();
  return !document.getElementById("context_undoCloseTab").disabled;
}

add_task(async function test() {
  Services.prefs.setIntPref("browser.sessionstore.max_tabs_undo", 0);
  Services.prefs.clearUserPref("browser.sessionstore.max_tabs_undo");
  is(numClosedTabs(), 0, "There should be 0 closed tabs.");
  ok(!isUndoCloseEnabled(), "Undo Close Tab should be disabled.");

  var tab = BrowserTestUtils.addTab(gBrowser, "http://mochi.test:8888/");
  var browser = gBrowser.getBrowserForTab(tab);
  await BrowserTestUtils.browserLoaded(browser);

  let sessionUpdatePromise = BrowserTestUtils.waitForSessionStoreUpdate(tab);
  BrowserTestUtils.removeTab(tab);
  await sessionUpdatePromise;

  ok(isUndoCloseEnabled(), "Undo Close Tab should be enabled.");
});