зеркало из https://github.com/mozilla/gecko-dev.git
Bug 597634 - Reset to a blank state for each test instead of relying on previous state in browser_522545.js [r=zpao, a=test]
This commit is contained in:
Родитель
0848273be7
Коммит
cf87ad5160
|
@ -55,17 +55,6 @@ function test() {
|
|||
let ss = Cc["@mozilla.org/browser/sessionstore;1"].
|
||||
getService(Ci.nsISessionStore);
|
||||
|
||||
function waitForBrowserState(aState, aSetStateCallback) {
|
||||
let tabsRestored = 0;
|
||||
gBrowser.tabContainer.addEventListener("SSTabRestored", function() {
|
||||
if (++tabsRestored == aState.windows[0].tabs.length) {
|
||||
gBrowser.tabContainer.removeEventListener("SSTabRestored", arguments.callee, true);
|
||||
executeSoon(aSetStateCallback);
|
||||
}
|
||||
}, true);
|
||||
ss.setBrowserState(JSON.stringify(aState));
|
||||
}
|
||||
|
||||
// This tests the following use case:
|
||||
// User opens a new tab which gets focus. The user types something into the
|
||||
// address bar, then crashes or quits.
|
||||
|
@ -256,18 +245,20 @@ function test() {
|
|||
event.initEvent("input", true, false);
|
||||
gURLBar.dispatchEvent(event);
|
||||
|
||||
is(browser.userTypedValue, "example.org",
|
||||
"userTypedValue was set when changing gURLBar.value");
|
||||
is(browser.userTypedClear, 0,
|
||||
"userTypedClear was not changed when changing gURLBar.value");
|
||||
executeSoon(function() {
|
||||
is(browser.userTypedValue, "example.org",
|
||||
"userTypedValue was set when changing gURLBar.value");
|
||||
is(browser.userTypedClear, 0,
|
||||
"userTypedClear was not changed when changing gURLBar.value");
|
||||
|
||||
// Now make sure ss gets these values too
|
||||
let newState = JSON.parse(ss.getBrowserState());
|
||||
is(newState.windows[0].tabs[0].userTypedValue, "example.org",
|
||||
"sessionstore got correct userTypedValue");
|
||||
is(newState.windows[0].tabs[0].userTypedClear, 0,
|
||||
"sessionstore got correct userTypedClear");
|
||||
runNextTest();
|
||||
// Now make sure ss gets these values too
|
||||
let newState = JSON.parse(ss.getBrowserState());
|
||||
is(newState.windows[0].tabs[0].userTypedValue, "example.org",
|
||||
"sessionstore got correct userTypedValue");
|
||||
is(newState.windows[0].tabs[0].userTypedClear, 0,
|
||||
"sessionstore got correct userTypedClear");
|
||||
runNextTest();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -303,9 +294,14 @@ function test() {
|
|||
test_getBrowserState_lotsOfTabsOpening,
|
||||
test_getBrowserState_userTypedValue, test_userTypedClearLoadURI];
|
||||
let originalState = ss.getBrowserState();
|
||||
let state = {
|
||||
windows: [{
|
||||
tabs: [{ entries: [{ url: "about:blank" }] }]
|
||||
}]
|
||||
};
|
||||
function runNextTest() {
|
||||
if (tests.length) {
|
||||
tests.shift()();
|
||||
waitForBrowserState(state, tests.shift());
|
||||
} else {
|
||||
ss.setBrowserState(originalState);
|
||||
executeSoon(function () {
|
||||
|
|
Загрузка…
Ссылка в новой задаче