diff options
Diffstat (limited to 'browser/base/content/test/urlbar/browser_urlbarEnter.js')
-rw-r--r-- | browser/base/content/test/urlbar/browser_urlbarEnter.js | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/browser/base/content/test/urlbar/browser_urlbarEnter.js b/browser/base/content/test/urlbar/browser_urlbarEnter.js new file mode 100644 index 0000000000..32cbaf2be2 --- /dev/null +++ b/browser/base/content/test/urlbar/browser_urlbarEnter.js @@ -0,0 +1,45 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +const TEST_VALUE = "example.com/\xF7?\xF7"; +const START_VALUE = "example.com/%C3%B7?%C3%B7"; + +add_task(function* () { + info("Simple return keypress"); + let tab = gBrowser.selectedTab = gBrowser.addTab(START_VALUE); + + gURLBar.focus(); + EventUtils.synthesizeKey("VK_RETURN", {}); + yield BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser); + + // Check url bar and selected tab. + is(gURLBar.textValue, TEST_VALUE, "Urlbar should preserve the value on return keypress"); + is(gBrowser.selectedTab, tab, "New URL was loaded in the current tab"); + + // Cleanup. + yield BrowserTestUtils.removeTab(gBrowser.selectedTab); +}); + +add_task(function* () { + info("Alt+Return keypress"); + // due to bug 691608, we must wait for the load event, else isTabEmpty() will + // return true on e10s for this tab, so it will be reused even with altKey. + let tab = yield BrowserTestUtils.openNewForegroundTab(gBrowser, START_VALUE); + + let tabOpenPromise = BrowserTestUtils.waitForEvent(gBrowser.tabContainer, "TabOpen"); + gURLBar.focus(); + EventUtils.synthesizeKey("VK_RETURN", {altKey: true}); + + // wait for the new tab to appear. + yield tabOpenPromise; + + // Check url bar and selected tab. + is(gURLBar.textValue, TEST_VALUE, "Urlbar should preserve the value on return keypress"); + isnot(gBrowser.selectedTab, tab, "New URL was loaded in a new tab"); + + // Cleanup. + yield BrowserTestUtils.removeTab(tab); + yield BrowserTestUtils.removeTab(gBrowser.selectedTab); +}); |