diff --git a/browser/components/sessionstore/test/browser/browser_490040.js b/browser/components/sessionstore/test/browser/browser_490040.js index 3645b76b9dfa..9728a7ffc573 100644 --- a/browser/components/sessionstore/test/browser/browser_490040.js +++ b/browser/components/sessionstore/test/browser/browser_490040.js @@ -35,8 +35,21 @@ * * ***** END LICENSE BLOCK ***** */ +function browserWindowsCount() { + let count = 0; + let e = Cc["@mozilla.org/appshell/window-mediator;1"] + .getService(Ci.nsIWindowMediator) + .getEnumerator("navigator:browser"); + while (e.hasMoreElements()) { + if (!e.getNext().closed) + ++count; + } + return count; +} + function test() { /** Test for Bug 490040 **/ + is(browserWindowsCount(), 1, "Only one browser window should be open initially"); let ss = Cc["@mozilla.org/browser/sessionstore;1"]. getService(Ci.nsISessionStore); @@ -154,6 +167,7 @@ function test() { else { if (gPrefService.prefHasUserValue("browser.sessionstore.max_windows_undo")) gPrefService.clearUserPref("browser.sessionstore.max_windows_undo"); + is(browserWindowsCount(), 1, "Only one browser window should be open eventually"); finish(); } } diff --git a/browser/components/sessionstore/test/browser/browser_491168.js b/browser/components/sessionstore/test/browser/browser_491168.js index b6bbd6a3adc9..4cd224cb72c4 100644 --- a/browser/components/sessionstore/test/browser/browser_491168.js +++ b/browser/components/sessionstore/test/browser/browser_491168.js @@ -34,8 +34,21 @@ * * ***** END LICENSE BLOCK ***** */ +function browserWindowsCount() { + let count = 0; + let e = Cc["@mozilla.org/appshell/window-mediator;1"] + .getService(Ci.nsIWindowMediator) + .getEnumerator("navigator:browser"); + while (e.hasMoreElements()) { + if (!e.getNext().closed) + ++count; + } + return count; +} + function test() { /** Test for Bug 491168 **/ + is(browserWindowsCount(), 1, "Only one browser window should be open initially"); // test setup let ss = Cc["@mozilla.org/browser/sessionstore;1"].getService(Ci.nsISessionStore); @@ -72,6 +85,7 @@ function test() { is(window.content.document.referrer, REFERRER2, "document.referrer is still correct after closing and reopening the tab."); gBrowser.removeTab(newTab); + is(browserWindowsCount(), 1, "Only one browser window should be open eventually"); finish(); }, true); }, true); diff --git a/browser/components/sessionstore/test/browser/browser_491577.js b/browser/components/sessionstore/test/browser/browser_491577.js index c990e61f14b2..b068c7f17a6c 100644 --- a/browser/components/sessionstore/test/browser/browser_491577.js +++ b/browser/components/sessionstore/test/browser/browser_491577.js @@ -35,8 +35,21 @@ * * ***** END LICENSE BLOCK ***** */ +function browserWindowsCount() { + let count = 0; + let e = Cc["@mozilla.org/appshell/window-mediator;1"] + .getService(Ci.nsIWindowMediator) + .getEnumerator("navigator:browser"); + while (e.hasMoreElements()) { + if (!e.getNext().closed) + ++count; + } + return count; +} + function test() { /** Test for Bug 491577 **/ + is(browserWindowsCount(), 1, "Only one browser window should be open initially"); // test setup let ss = Cc["@mozilla.org/browser/sessionstore;1"].getService(Ci.nsISessionStore); @@ -149,6 +162,7 @@ function test() { // clean up newWin.close(); + is(browserWindowsCount(), 1, "Only one browser window should be open eventually"); if (gPrefService.prefHasUserValue("browser.sessionstore.max_windows_undo")) gPrefService.clearUserPref("browser.sessionstore.max_windows_undo"); finish(); diff --git a/browser/components/sessionstore/test/browser/browser_493467.js b/browser/components/sessionstore/test/browser/browser_493467.js index 9a0d55e2cbb3..5359f243cecb 100644 --- a/browser/components/sessionstore/test/browser/browser_493467.js +++ b/browser/components/sessionstore/test/browser/browser_493467.js @@ -34,8 +34,21 @@ * * ***** END LICENSE BLOCK ***** */ +function browserWindowsCount() { + let count = 0; + let e = Cc["@mozilla.org/appshell/window-mediator;1"] + .getService(Ci.nsIWindowMediator) + .getEnumerator("navigator:browser"); + while (e.hasMoreElements()) { + if (!e.getNext().closed) + ++count; + } + return count; +} + function test() { /** Test for Bug 493467 **/ + is(browserWindowsCount(), 1, "Only one browser window should be open initially"); let ss = Cc["@mozilla.org/browser/sessionstore;1"].getService(Ci.nsISessionStore); @@ -66,4 +79,5 @@ function test() { // leading "allow") to nsSessionStore.js's CAPABILITIES array. Thanks. gBrowser.removeTab(tab); + is(browserWindowsCount(), 1, "Only one browser window should be open eventually"); } diff --git a/browser/components/sessionstore/test/browser/browser_495495.js b/browser/components/sessionstore/test/browser/browser_495495.js index 42d569be35e6..7c2faaadd1d2 100644 --- a/browser/components/sessionstore/test/browser/browser_495495.js +++ b/browser/components/sessionstore/test/browser/browser_495495.js @@ -34,8 +34,21 @@ * * ***** END LICENSE BLOCK ***** */ +function browserWindowsCount() { + let count = 0; + let e = Cc["@mozilla.org/appshell/window-mediator;1"] + .getService(Ci.nsIWindowMediator) + .getEnumerator("navigator:browser"); + while (e.hasMoreElements()) { + if (!e.getNext().closed) + ++count; + } + return count; +} + function test() { /** Test for Bug 495495 **/ + is(browserWindowsCount(), 1, "Only one browser window should be open initially"); let ss = Cc["@mozilla.org/browser/sessionstore;1"].getService(Ci.nsISessionStore); waitForExplicitFinish(); @@ -79,7 +92,10 @@ function test() { testState(state1, {readOnly: false, enablehistory: "true"}, function() { testState(state2, {readOnly: true, enablehistory: "false"}, function() { - executeSoon(finish); + executeSoon(function () { + is(browserWindowsCount(), 1, "Only one browser window should be open eventually"); + finish(); + }); }); }); });