forked from mirrors/gecko-dev
MozReview-Commit-ID: IyFGBotfd11 --HG-- extra : rebase_source : aa43e5aea9e7fd7223fc59e941ecdc067abdb48f
41 lines
1.6 KiB
JavaScript
41 lines
1.6 KiB
JavaScript
"use strict";
|
|
|
|
/**
|
|
* Test that when opening a private browsing window and typing in it before about:privatebrowsing
|
|
* loads, we don't clear the URL bar.
|
|
*/
|
|
add_task(function*() {
|
|
let urlbarTestValue = "Mary had a little lamb";
|
|
let win = OpenBrowserWindow({private: true});
|
|
yield BrowserTestUtils.waitForEvent(win, "load");
|
|
let urlbar = win.document.getElementById("urlbar");
|
|
urlbar.value = urlbarTestValue;
|
|
// Need this so the autocomplete controller attaches:
|
|
let focusEv = new FocusEvent("focus", {});
|
|
urlbar.dispatchEvent(focusEv);
|
|
// And so we know input happened:
|
|
let inputEv = new InputEvent("input", {data: "", view: win, bubbles: true});
|
|
urlbar.onInput(inputEv);
|
|
// Check it worked:
|
|
is(urlbar.value, urlbarTestValue, "URL bar value should be there");
|
|
is(win.gBrowser.selectedBrowser.userTypedValue, urlbarTestValue, "browser object should know the url bar value");
|
|
|
|
let continueTest;
|
|
let continuePromise = new Promise(resolve => continueTest = resolve);
|
|
let wpl = {
|
|
onLocationChange(aWebProgress, aRequest, aLocation) {
|
|
if (aLocation && aLocation.spec == "about:privatebrowsing") {
|
|
continueTest();
|
|
}
|
|
},
|
|
};
|
|
win.gBrowser.addProgressListener(wpl);
|
|
|
|
yield continuePromise;
|
|
is(urlbar.value, urlbarTestValue,
|
|
"URL bar value should be the same once about:privatebrowsing has loaded");
|
|
is(win.gBrowser.selectedBrowser.userTypedValue, urlbarTestValue,
|
|
"browser object should still know url bar value once about:privatebrowsing has loaded");
|
|
win.gBrowser.removeProgressListener(wpl);
|
|
yield BrowserTestUtils.closeWindow(win);
|
|
});
|