diff options
Diffstat (limited to 'browser/base/content/test/urlbar/browser_bug1025195_switchToTabHavingURI_aOpenParams.js')
-rw-r--r-- | browser/base/content/test/urlbar/browser_bug1025195_switchToTabHavingURI_aOpenParams.js | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/browser/base/content/test/urlbar/browser_bug1025195_switchToTabHavingURI_aOpenParams.js b/browser/base/content/test/urlbar/browser_bug1025195_switchToTabHavingURI_aOpenParams.js deleted file mode 100644 index 9e779ade1..000000000 --- a/browser/base/content/test/urlbar/browser_bug1025195_switchToTabHavingURI_aOpenParams.js +++ /dev/null @@ -1,124 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -add_task(function* test_ignoreFragment() { - let tabRefAboutHome = - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:home#1"); - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:mozilla"); - let numTabsAtStart = gBrowser.tabs.length; - - switchTab("about:home#1", true); - switchTab("about:mozilla", true); - - let hashChangePromise = ContentTask.spawn(tabRefAboutHome.linkedBrowser, null, function* () { - yield ContentTaskUtils.waitForEvent(this, "hashchange", false); - }); - switchTab("about:home#2", true, { ignoreFragment: "whenComparingAndReplace" }); - is(tabRefAboutHome, gBrowser.selectedTab, "The same about:home tab should be switched to"); - yield hashChangePromise; - is(gBrowser.currentURI.ref, "2", "The ref should be updated to the new ref"); - switchTab("about:mozilla", true); - switchTab("about:home#3", true, { ignoreFragment: "whenComparing" }); - is(tabRefAboutHome, gBrowser.selectedTab, "The same about:home tab should be switched to"); - is(gBrowser.currentURI.ref, "2", "The ref should be unchanged since the fragment is only ignored when comparing"); - switchTab("about:mozilla", true); - switchTab("about:home#1", false); - isnot(tabRefAboutHome, gBrowser.selectedTab, "Selected tab should not be initial about:blank tab"); - is(gBrowser.tabs.length, numTabsAtStart + 1, "Should have one new tab opened"); - switchTab("about:mozilla", true); - switchTab("about:home", true, {ignoreFragment: "whenComparingAndReplace"}); - yield BrowserTestUtils.waitForCondition(function() { - return tabRefAboutHome.linkedBrowser.currentURI.spec == "about:home"; - }); - is(tabRefAboutHome.linkedBrowser.currentURI.spec, "about:home", "about:home shouldn't have hash"); - switchTab("about:about", false, { ignoreFragment: "whenComparingAndReplace" }); - cleanupTestTabs(); -}); - -add_task(function* test_ignoreQueryString() { - let tabRefAboutHome = - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:home?hello=firefox"); - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:mozilla"); - - switchTab("about:home?hello=firefox", true); - switchTab("about:home?hello=firefoxos", false); - // Remove the last opened tab to test ignoreQueryString option. - gBrowser.removeCurrentTab(); - switchTab("about:home?hello=firefoxos", true, { ignoreQueryString: true }); - is(tabRefAboutHome, gBrowser.selectedTab, "Selected tab should be the initial about:home tab"); - is(gBrowser.currentURI.spec, "about:home?hello=firefox", "The spec should NOT be updated to the new query string"); - cleanupTestTabs(); -}); - -add_task(function* test_replaceQueryString() { - let tabRefAboutHome = - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:home?hello=firefox"); - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:mozilla"); - - switchTab("about:home", false); - switchTab("about:home?hello=firefox", true); - switchTab("about:home?hello=firefoxos", false); - // Remove the last opened tab to test replaceQueryString option. - gBrowser.removeCurrentTab(); - switchTab("about:home?hello=firefoxos", true, { replaceQueryString: true }); - is(tabRefAboutHome, gBrowser.selectedTab, "Selected tab should be the initial about:home tab"); - // Wait for the tab to load the new URI spec. - yield BrowserTestUtils.browserLoaded(tabRefAboutHome.linkedBrowser); - is(gBrowser.currentURI.spec, "about:home?hello=firefoxos", "The spec should be updated to the new spec"); - cleanupTestTabs(); -}); - -add_task(function* test_replaceQueryStringAndFragment() { - let tabRefAboutHome = - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:home?hello=firefox#aaa"); - let tabRefAboutMozilla = - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:mozilla?hello=firefoxos#aaa"); - - switchTab("about:home", false); - gBrowser.removeCurrentTab(); - switchTab("about:home?hello=firefox#aaa", true); - is(tabRefAboutHome, gBrowser.selectedTab, "Selected tab should be the initial about:home tab"); - switchTab("about:mozilla?hello=firefox#bbb", true, { replaceQueryString: true, ignoreFragment: "whenComparingAndReplace" }); - is(tabRefAboutMozilla, gBrowser.selectedTab, "Selected tab should be the initial about:mozilla tab"); - switchTab("about:home?hello=firefoxos#bbb", true, { ignoreQueryString: true, ignoreFragment: "whenComparingAndReplace" }); - is(tabRefAboutHome, gBrowser.selectedTab, "Selected tab should be the initial about:home tab"); - cleanupTestTabs(); -}); - -add_task(function* test_ignoreQueryStringIgnoresFragment() { - let tabRefAboutHome = - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:home?hello=firefox#aaa"); - yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:mozilla?hello=firefoxos#aaa"); - - switchTab("about:home?hello=firefox#bbb", false, { ignoreQueryString: true }); - gBrowser.removeCurrentTab(); - switchTab("about:home?hello=firefoxos#aaa", true, { ignoreQueryString: true }); - is(tabRefAboutHome, gBrowser.selectedTab, "Selected tab should be the initial about:home tab"); - cleanupTestTabs(); -}); - -// Begin helpers - -function cleanupTestTabs() { - while (gBrowser.tabs.length > 1) - gBrowser.removeCurrentTab(); -} - -function switchTab(aURI, aShouldFindExistingTab, aOpenParams = {}) { - // Build the description before switchToTabHavingURI deletes the object properties. - let msg = `Should switch to existing ${aURI} tab if one existed, ` + - `${(aOpenParams.ignoreFragment ? "ignoring" : "including")} fragment portion, `; - if (aOpenParams.replaceQueryString) { - msg += "replacing"; - } else if (aOpenParams.ignoreQueryString) { - msg += "ignoring"; - } else { - msg += "including"; - } - msg += " query string."; - let tabFound = switchToTabHavingURI(aURI, true, aOpenParams); - is(tabFound, aShouldFindExistingTab, msg); -} - -registerCleanupFunction(cleanupTestTabs); |