diff --git a/browser/base/content/test/Makefile.in b/browser/base/content/test/Makefile.in index e826ffb244a..1dc05eaed6d 100644 --- a/browser/base/content/test/Makefile.in +++ b/browser/base/content/test/Makefile.in @@ -183,6 +183,7 @@ MOCHITEST_BROWSER_FILES = \ browser_bug822367.js \ browser_bug832435.js \ browser_bug839103.js \ + browser_bug882977.js \ browser_canonizeURL.js \ browser_clearplugindata_noage.html \ browser_clearplugindata.html \ diff --git a/browser/base/content/test/browser_bug882977.js b/browser/base/content/test/browser_bug882977.js new file mode 100644 index 00000000000..abbdc84d135 --- /dev/null +++ b/browser/base/content/test/browser_bug882977.js @@ -0,0 +1,40 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ + */ + +function test() { + waitForExplicitFinish(); + + registerCleanupFunction(function() { + Services.prefs.clearUserPref("browser.startup.homepage"); + Services.prefs.clearUserPref("browser.startup.page"); + win.close(); + }); + + let homepage = "about:home"; + Services.prefs.setCharPref("browser.startup.homepage", homepage); + Services.prefs.setIntPref("browser.startup.page", 1); + let win = OpenBrowserWindow(); + whenDelayedStartupFinished(win, function() { + let browser = win.gBrowser.selectedBrowser; + if (browser.contentDocument.readyState == "complete" && + browser.currentURI.spec == homepage) { + checkIdentityMode(win); + return; + } + + browser.addEventListener("load", function onLoad() { + if (browser.currentURI.spec != homepage) + return; + browser.removeEventListener("load", onLoad, true); + checkIdentityMode(win); + }, true); + }); +} + +function checkIdentityMode(win) { + let identityMode = win.document.getElementById("identity-box").className; + is(identityMode, "unknownIdentity", "Identity should be chromeUI but is currently " + + "shown as unknownIdentity for new windows."); + finish(); +}