forked from mirrors/gecko-dev
48 lines
1.4 KiB
JavaScript
48 lines
1.4 KiB
JavaScript
add_task(function*() {
|
|
yield PlacesTestUtils.clearHistory();
|
|
|
|
yield PlacesTestUtils.addVisits([
|
|
{ uri: makeURI("http://example.com/foo") },
|
|
{ uri: makeURI("http://example.com/foo/bar") },
|
|
]);
|
|
|
|
registerCleanupFunction(function* () {
|
|
yield PlacesTestUtils.clearHistory();
|
|
});
|
|
|
|
gBrowser.selectedTab = gBrowser.addTab("about:blank");
|
|
gURLBar.focus();
|
|
|
|
yield promiseAutocompleteResultPopup("http://example.com");
|
|
|
|
let popup = gURLBar.popup;
|
|
let list = popup.richlistbox;
|
|
let initialIndex = list.selectedIndex;
|
|
|
|
info("Key Down to select the next item.");
|
|
EventUtils.synthesizeKey("VK_DOWN", {});
|
|
|
|
let nextIndex = initialIndex + 1;
|
|
let nextValue = gURLBar.controller.getFinalCompleteValueAt(nextIndex);
|
|
is(list.selectedIndex, nextIndex, "The next item is selected.");
|
|
is(gURLBar.value, nextValue, "The selected URL is completed.");
|
|
|
|
info("Press backspace");
|
|
EventUtils.synthesizeKey("VK_BACK_SPACE", {});
|
|
yield promiseSearchComplete();
|
|
|
|
let editedValue = gURLBar.textValue;
|
|
is(list.selectedIndex, initialIndex, "The initial index is selected again.");
|
|
isnot(editedValue, nextValue, "The URL has changed.");
|
|
|
|
let docLoad = waitForDocLoadAndStopIt("http://" + editedValue);
|
|
|
|
info("Press return to load edited URL.");
|
|
EventUtils.synthesizeKey("VK_RETURN", {});
|
|
yield Promise.all([
|
|
promisePopupHidden(gURLBar.popup),
|
|
docLoad,
|
|
]);
|
|
|
|
gBrowser.removeTab(gBrowser.selectedTab);
|
|
});
|