mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-11-08 04:09:03 +02:00
MozReview-Commit-ID: 67eb9v4blas --HG-- rename : browser/base/content/test/general/authenticate.sjs => browser/base/content/test/urlbar/authenticate.sjs rename : browser/base/content/test/general/browser_URLBarSetURI.js => browser/base/content/test/urlbar/browser_URLBarSetURI.js rename : browser/base/content/test/general/browser_action_keyword.js => browser/base/content/test/urlbar/browser_action_keyword.js rename : browser/base/content/test/general/browser_action_keyword_override.js => browser/base/content/test/urlbar/browser_action_keyword_override.js rename : browser/base/content/test/general/browser_action_searchengine.js => browser/base/content/test/urlbar/browser_action_searchengine.js rename : browser/base/content/test/general/browser_action_searchengine_alias.js => browser/base/content/test/urlbar/browser_action_searchengine_alias.js rename : browser/base/content/test/general/browser_autocomplete_a11y_label.js => browser/base/content/test/urlbar/browser_autocomplete_a11y_label.js rename : browser/base/content/test/general/browser_autocomplete_autoselect.js => browser/base/content/test/urlbar/browser_autocomplete_autoselect.js rename : browser/base/content/test/general/browser_autocomplete_cursor.js => browser/base/content/test/urlbar/browser_autocomplete_cursor.js rename : browser/base/content/test/general/browser_autocomplete_edit_completed.js => browser/base/content/test/urlbar/browser_autocomplete_edit_completed.js rename : browser/base/content/test/general/browser_autocomplete_enter_race.js => browser/base/content/test/urlbar/browser_autocomplete_enter_race.js rename : browser/base/content/test/general/browser_autocomplete_no_title.js => browser/base/content/test/urlbar/browser_autocomplete_no_title.js rename : browser/base/content/test/general/browser_autocomplete_oldschool_wrap.js => browser/base/content/test/urlbar/browser_autocomplete_oldschool_wrap.js rename : browser/base/content/test/general/browser_autocomplete_tag_star_visibility.js => browser/base/content/test/urlbar/browser_autocomplete_tag_star_visibility.js rename : browser/base/content/test/general/browser_bug1003461-switchtab-override.js => browser/base/content/test/urlbar/browser_bug1003461-switchtab-override.js rename : browser/base/content/test/general/browser_bug1024133-switchtab-override-keynav.js => browser/base/content/test/urlbar/browser_bug1024133-switchtab-override-keynav.js rename : browser/base/content/test/general/browser_bug1025195_switchToTabHavingURI_aOpenParams.js => browser/base/content/test/urlbar/browser_bug1025195_switchToTabHavingURI_aOpenParams.js rename : browser/base/content/test/general/browser_bug1070778.js => browser/base/content/test/urlbar/browser_bug1070778.js rename : browser/base/content/test/general/browser_bug1104165-switchtab-decodeuri.js => browser/base/content/test/urlbar/browser_bug1104165-switchtab-decodeuri.js rename : browser/base/content/test/general/browser_bug1225194-remotetab.js => browser/base/content/test/urlbar/browser_bug1225194-remotetab.js rename : browser/base/content/test/general/browser_bug304198.js => browser/base/content/test/urlbar/browser_bug304198.js rename : browser/base/content/test/general/browser_bug556061.js => browser/base/content/test/urlbar/browser_bug556061.js rename : browser/base/content/test/general/browser_bug562649.js => browser/base/content/test/urlbar/browser_bug562649.js rename : browser/base/content/test/general/browser_bug623155.js => browser/base/content/test/urlbar/browser_bug623155.js rename : browser/base/content/test/general/browser_bug783614.js => browser/base/content/test/urlbar/browser_bug783614.js rename : browser/base/content/test/general/browser_canonizeURL.js => browser/base/content/test/urlbar/browser_canonizeURL.js rename : browser/base/content/test/general/browser_locationBarCommand.js => browser/base/content/test/urlbar/browser_locationBarCommand.js rename : browser/base/content/test/general/browser_locationBarExternalLoad.js => browser/base/content/test/urlbar/browser_locationBarExternalLoad.js rename : browser/base/content/test/general/browser_removeUnsafeProtocolsFromURLBarPaste.js => browser/base/content/test/urlbar/browser_removeUnsafeProtocolsFromURLBarPaste.js rename : browser/base/content/test/general/browser_search_favicon.js => browser/base/content/test/urlbar/browser_search_favicon.js rename : browser/base/content/test/general/browser_tabMatchesInAwesomebar.js => browser/base/content/test/urlbar/browser_tabMatchesInAwesomebar.js rename : browser/base/content/test/general/browser_tabMatchesInAwesomebar_perwindowpb.js => browser/base/content/test/urlbar/browser_tabMatchesInAwesomebar_perwindowpb.js rename : browser/base/content/test/general/browser_urlHighlight.js => browser/base/content/test/urlbar/browser_urlHighlight.js rename : browser/base/content/test/general/browser_urlbarAutoFillTrimURLs.js => browser/base/content/test/urlbar/browser_urlbarAutoFillTrimURLs.js rename : browser/base/content/test/general/browser_urlbarCopying.js => browser/base/content/test/urlbar/browser_urlbarCopying.js rename : browser/base/content/test/general/browser_urlbarDecode.js => browser/base/content/test/urlbar/browser_urlbarDecode.js rename : browser/base/content/test/general/browser_urlbarDelete.js => browser/base/content/test/urlbar/browser_urlbarDelete.js rename : browser/base/content/test/general/browser_urlbarEnter.js => browser/base/content/test/urlbar/browser_urlbarEnter.js rename : browser/base/content/test/general/browser_urlbarEnterAfterMouseOver.js => browser/base/content/test/urlbar/browser_urlbarEnterAfterMouseOver.js rename : browser/base/content/test/general/browser_urlbarRevert.js => browser/base/content/test/urlbar/browser_urlbarRevert.js rename : browser/base/content/test/general/browser_urlbarSearchSingleWordNotification.js => browser/base/content/test/urlbar/browser_urlbarSearchSingleWordNotification.js rename : browser/base/content/test/general/browser_urlbarSearchSuggestions.js => browser/base/content/test/urlbar/browser_urlbarSearchSuggestions.js rename : browser/base/content/test/general/browser_urlbarSearchSuggestionsNotification.js => browser/base/content/test/urlbar/browser_urlbarSearchSuggestionsNotification.js rename : browser/base/content/test/general/browser_urlbarSearchTelemetry.js => browser/base/content/test/urlbar/browser_urlbarSearchTelemetry.js rename : browser/base/content/test/general/browser_urlbarStop.js => browser/base/content/test/urlbar/browser_urlbarStop.js rename : browser/base/content/test/general/browser_urlbarTrimURLs.js => browser/base/content/test/urlbar/browser_urlbarTrimURLs.js rename : browser/base/content/test/general/browser_urlbar_autoFill_backspaced.js => browser/base/content/test/urlbar/browser_urlbar_autoFill_backspaced.js rename : browser/base/content/test/general/browser_urlbar_searchsettings.js => browser/base/content/test/urlbar/browser_urlbar_searchsettings.js rename : browser/base/content/test/general/browser_wyciwyg_urlbarCopying.js => browser/base/content/test/urlbar/browser_wyciwyg_urlbarCopying.js rename : browser/base/content/test/general/dummy_page.html => browser/base/content/test/urlbar/dummy_page.html rename : browser/base/content/test/general/head.js => browser/base/content/test/urlbar/head.js rename : browser/base/content/test/general/moz.png => browser/base/content/test/urlbar/moz.png rename : browser/base/content/test/general/redirect_bug623155.sjs => browser/base/content/test/urlbar/redirect_bug623155.sjs rename : browser/base/content/test/general/searchSuggestionEngine.sjs => browser/base/content/test/urlbar/searchSuggestionEngine.sjs rename : browser/base/content/test/general/searchSuggestionEngine.xml => browser/base/content/test/urlbar/searchSuggestionEngine.xml rename : browser/base/content/test/general/test_wyciwyg_copying.html => browser/base/content/test/urlbar/test_wyciwyg_copying.html rename : browser/base/content/test/general/authenticate.sjs => toolkit/components/thumbnails/test/authenticate.sjs extra : rebase_source : 3c83a311373930cb962816cf61d84a8ee7c44c07 extra : amend_source : 9ed9e18817c591afb9b4d10fda724bb71dd80b26
106 lines
4.1 KiB
JavaScript
106 lines
4.1 KiB
JavaScript
/* 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* () {
|
|
let charsToDelete, deletedURLTab, fullURLTab, partialURLTab, testPartialURL, testURL;
|
|
|
|
charsToDelete = 5;
|
|
deletedURLTab = gBrowser.addTab();
|
|
fullURLTab = gBrowser.addTab();
|
|
partialURLTab = gBrowser.addTab();
|
|
testURL = "http://example.org/browser/browser/base/content/test/urlbar/dummy_page.html";
|
|
|
|
let loaded1 = BrowserTestUtils.browserLoaded(deletedURLTab.linkedBrowser, testURL);
|
|
let loaded2 = BrowserTestUtils.browserLoaded(fullURLTab.linkedBrowser, testURL);
|
|
let loaded3 = BrowserTestUtils.browserLoaded(partialURLTab.linkedBrowser, testURL);
|
|
deletedURLTab.linkedBrowser.loadURI(testURL);
|
|
fullURLTab.linkedBrowser.loadURI(testURL);
|
|
partialURLTab.linkedBrowser.loadURI(testURL);
|
|
yield Promise.all([loaded1, loaded2, loaded3]);
|
|
|
|
testURL = gURLBar.trimValue(testURL);
|
|
testPartialURL = testURL.substr(0, (testURL.length - charsToDelete));
|
|
|
|
function cleanUp() {
|
|
gBrowser.removeTab(fullURLTab);
|
|
gBrowser.removeTab(partialURLTab);
|
|
gBrowser.removeTab(deletedURLTab);
|
|
}
|
|
|
|
function* cycleTabs() {
|
|
yield BrowserTestUtils.switchTab(gBrowser, fullURLTab);
|
|
is(gURLBar.textValue, testURL, 'gURLBar.textValue should be testURL after switching back to fullURLTab');
|
|
|
|
yield BrowserTestUtils.switchTab(gBrowser, partialURLTab);
|
|
is(gURLBar.textValue, testPartialURL, 'gURLBar.textValue should be testPartialURL after switching back to partialURLTab');
|
|
yield BrowserTestUtils.switchTab(gBrowser, deletedURLTab);
|
|
is(gURLBar.textValue, '', 'gURLBar.textValue should be "" after switching back to deletedURLTab');
|
|
|
|
yield BrowserTestUtils.switchTab(gBrowser, fullURLTab);
|
|
is(gURLBar.textValue, testURL, 'gURLBar.textValue should be testURL after switching back to fullURLTab');
|
|
}
|
|
|
|
function urlbarBackspace() {
|
|
return new Promise((resolve, reject) => {
|
|
gBrowser.selectedBrowser.focus();
|
|
gURLBar.addEventListener("input", function () {
|
|
gURLBar.removeEventListener("input", arguments.callee, false);
|
|
resolve();
|
|
}, false);
|
|
gURLBar.focus();
|
|
EventUtils.synthesizeKey("VK_BACK_SPACE", {});
|
|
});
|
|
}
|
|
|
|
function* prepareDeletedURLTab() {
|
|
yield BrowserTestUtils.switchTab(gBrowser, deletedURLTab);
|
|
is(gURLBar.textValue, testURL, 'gURLBar.textValue should be testURL after initial switch to deletedURLTab');
|
|
|
|
// simulate the user removing the whole url from the location bar
|
|
gPrefService.setBoolPref("browser.urlbar.clickSelectsAll", true);
|
|
|
|
yield urlbarBackspace();
|
|
is(gURLBar.textValue, "", 'gURLBar.textValue should be "" (just set)');
|
|
if (gPrefService.prefHasUserValue("browser.urlbar.clickSelectsAll")) {
|
|
gPrefService.clearUserPref("browser.urlbar.clickSelectsAll");
|
|
}
|
|
}
|
|
|
|
function* prepareFullURLTab() {
|
|
yield BrowserTestUtils.switchTab(gBrowser, fullURLTab);
|
|
is(gURLBar.textValue, testURL, 'gURLBar.textValue should be testURL after initial switch to fullURLTab');
|
|
}
|
|
|
|
function* preparePartialURLTab() {
|
|
yield BrowserTestUtils.switchTab(gBrowser, partialURLTab);
|
|
is(gURLBar.textValue, testURL, 'gURLBar.textValue should be testURL after initial switch to partialURLTab');
|
|
|
|
// simulate the user removing part of the url from the location bar
|
|
gPrefService.setBoolPref("browser.urlbar.clickSelectsAll", false);
|
|
|
|
let deleted = 0;
|
|
while (deleted < charsToDelete) {
|
|
yield urlbarBackspace(arguments.callee);
|
|
deleted++;
|
|
}
|
|
|
|
is(gURLBar.textValue, testPartialURL, "gURLBar.textValue should be testPartialURL (just set)");
|
|
if (gPrefService.prefHasUserValue("browser.urlbar.clickSelectsAll")) {
|
|
gPrefService.clearUserPref("browser.urlbar.clickSelectsAll");
|
|
}
|
|
}
|
|
|
|
// prepare the three tabs required by this test
|
|
|
|
// First tab
|
|
yield* prepareFullURLTab();
|
|
yield* preparePartialURLTab();
|
|
yield* prepareDeletedURLTab();
|
|
|
|
// now cycle the tabs and make sure everything looks good
|
|
yield* cycleTabs();
|
|
cleanUp();
|
|
});
|
|
|
|
|