diff options
Diffstat (limited to 'browser/base/content/test/general/browser_bug1299667.js')
-rw-r--r-- | browser/base/content/test/general/browser_bug1299667.js | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/browser/base/content/test/general/browser_bug1299667.js b/browser/base/content/test/general/browser_bug1299667.js deleted file mode 100644 index 084c8d49f..000000000 --- a/browser/base/content/test/general/browser_bug1299667.js +++ /dev/null @@ -1,71 +0,0 @@ -/* Any copyright is dedicated to the Public Domain. - http://creativecommons.org/publicdomain/zero/1.0/ */ - -const { addObserver, removeObserver } = Cc["@mozilla.org/observer-service;1"]. - getService(Ci.nsIObserverService); - -function receive(topic) { - return new Promise((resolve, reject) => { - let timeout = setTimeout(() => { - reject(new Error("Timeout")); - }, 90000); - - const observer = { - observe: subject => { - removeObserver(observer, topic); - clearTimeout(timeout); - resolve(subject); - } - }; - addObserver(observer, topic, false); - }); -} - -add_task(function* () { - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "http://example.com"); - - yield ContentTask.spawn(gBrowser.selectedBrowser, {}, function* () { - content.history.pushState({}, "2", "2.html"); - }); - - yield receive("sessionstore-state-write-complete"); - - // Wait for the session data to be flushed before continuing the test - yield new Promise(resolve => SessionStore.getSessionHistory(gBrowser.selectedTab, resolve)); - - let backButton = document.getElementById("back-button"); - let contextMenu = document.getElementById("backForwardMenu"); - - info("waiting for the history menu to open"); - - let popupShownPromise = BrowserTestUtils.waitForEvent(contextMenu, "popupshown"); - EventUtils.synthesizeMouseAtCenter(backButton, {type: "contextmenu", button: 2}); - let event = yield popupShownPromise; - - ok(true, "history menu opened"); - - // Wait for the session data to be flushed before continuing the test - yield new Promise(resolve => SessionStore.getSessionHistory(gBrowser.selectedTab, resolve)); - - is(event.target.children.length, 2, "Two history items"); - - let node = event.target.firstChild; - is(node.getAttribute("uri"), "http://example.com/2.html", "first item uri"); - is(node.getAttribute("index"), "1", "first item index"); - is(node.getAttribute("historyindex"), "0", "first item historyindex"); - - node = event.target.lastChild; - is(node.getAttribute("uri"), "http://example.com/", "second item uri"); - is(node.getAttribute("index"), "0", "second item index"); - is(node.getAttribute("historyindex"), "-1", "second item historyindex"); - - let popupHiddenPromise = BrowserTestUtils.waitForEvent(contextMenu, "popuphidden"); - event.target.hidePopup(); - yield popupHiddenPromise; - info("Hidden popup"); - - let onClose = BrowserTestUtils.waitForEvent(gBrowser.tabContainer, "TabClose"); - yield BrowserTestUtils.removeTab(gBrowser.selectedTab); - yield onClose; - info("Tab closed"); -}); |