mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-02 18:08:58 +00:00
Bug 806701 - Port browser_privatebrowsing_windowtitle.js to the new per-window PB APIs; r=ehsan
--HG-- rename : browser/components/privatebrowsing/test/browser/global/browser_privatebrowsing_windowtitle.js => browser/components/privatebrowsing/test/browser/perwindow/browser_privatebrowsing_windowtitle.js rename : browser/components/privatebrowsing/test/browser/global/browser_privatebrowsing_windowtitle_page.html => browser/components/privatebrowsing/test/browser/perwindow/browser_privatebrowsing_windowtitle_page.html
This commit is contained in:
parent
4f3a72173c
commit
572080d729
@ -35,6 +35,8 @@ MOCHITEST_BROWSER_FILES = \
|
||||
browser_privatebrowsing_protocolhandler_page.html \
|
||||
browser_privatebrowsing_theming.js \
|
||||
browser_privatebrowsing_urlbarfocus.js \
|
||||
browser_privatebrowsing_windowtitle.js \
|
||||
browser_privatebrowsing_windowtitle_page.html \
|
||||
browser_privatebrowsing_zoomrestore.js \
|
||||
popup.html \
|
||||
$(NULL)
|
||||
|
@ -0,0 +1,99 @@
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// This test makes sure that the window title changes correctly while switching
|
||||
// from and to private browsing mode.
|
||||
|
||||
function test() {
|
||||
const testPageURL = "http://mochi.test:8888/browser/" +
|
||||
"browser/components/privatebrowsing/test/browser/perwindow/browser_privatebrowsing_windowtitle_page.html";
|
||||
waitForExplicitFinish();
|
||||
requestLongerTimeout(2);
|
||||
|
||||
// initialization of expected titles
|
||||
let test_title = "Test title";
|
||||
let app_name = document.documentElement.getAttribute("title");
|
||||
const isOSX = ("nsILocalFileMac" in Ci);
|
||||
let page_with_title;
|
||||
let page_without_title;
|
||||
let about_pb_title;
|
||||
let pb_page_with_title;
|
||||
let pb_page_without_title;
|
||||
let pb_about_pb_title;
|
||||
if (isOSX) {
|
||||
page_with_title = test_title;
|
||||
page_without_title = app_name;
|
||||
about_pb_title = "Would you like to start Private Browsing?";
|
||||
pb_page_with_title = test_title + " - (Private Browsing)";
|
||||
pb_page_without_title = app_name + " - (Private Browsing)";
|
||||
pb_about_pb_title = pb_page_without_title;
|
||||
}
|
||||
else {
|
||||
page_with_title = test_title + " - " + app_name;
|
||||
page_without_title = app_name;
|
||||
about_pb_title = "Would you like to start Private Browsing?" + " - " + app_name;
|
||||
pb_page_with_title = test_title + " - " + app_name + " (Private Browsing)";
|
||||
pb_page_without_title = app_name + " (Private Browsing)";
|
||||
pb_about_pb_title = "Private Browsing - " + app_name + " (Private Browsing)";
|
||||
}
|
||||
|
||||
function testTabTitle(aWindow, url, insidePB, expected_title, funcNext) {
|
||||
executeSoon(function () {
|
||||
let tab = aWindow.gBrowser.selectedTab = aWindow.gBrowser.addTab();
|
||||
let browser = aWindow.gBrowser.selectedBrowser;
|
||||
browser.stop();
|
||||
// ensure that the test is run after the titlebar has been updated
|
||||
browser.addEventListener("pageshow", function () {
|
||||
browser.removeEventListener("pageshow", arguments.callee, false);
|
||||
executeSoon(function () {
|
||||
is(aWindow.document.title, expected_title, "The window title for " + url +
|
||||
" is correct (" + (insidePB ? "inside" : "outside") +
|
||||
" private browsing mode)");
|
||||
|
||||
let win = aWindow.gBrowser.replaceTabWithWindow(tab);
|
||||
win.addEventListener("load", function() {
|
||||
win.removeEventListener("load", arguments.callee, false);
|
||||
|
||||
executeSoon(function() {
|
||||
is(win.document.title, expected_title, "The window title for " + url +
|
||||
" detached tab is correct (" + (insidePB ? "inside" : "outside") +
|
||||
" private browsing mode)");
|
||||
win.close();
|
||||
aWindow.close();
|
||||
|
||||
setTimeout(funcNext, 0);
|
||||
});
|
||||
}, false);
|
||||
});
|
||||
}, false);
|
||||
|
||||
browser.loadURI(url);
|
||||
});
|
||||
}
|
||||
|
||||
whenNewWindowLoaded({private: false}, function(win) {
|
||||
testTabTitle(win, "about:blank", false, page_without_title, function() {
|
||||
whenNewWindowLoaded({private: false}, function(win) {
|
||||
testTabTitle(win, testPageURL, false, page_with_title, function() {
|
||||
whenNewWindowLoaded({private: false}, function(win) {
|
||||
testTabTitle(win, "about:privatebrowsing", false, about_pb_title, function() {
|
||||
whenNewWindowLoaded({private: true}, function(win) {
|
||||
testTabTitle(win, "about:blank", true, pb_page_without_title, function() {
|
||||
whenNewWindowLoaded({private: true}, function(win) {
|
||||
testTabTitle(win, testPageURL, true, pb_page_with_title, function() {
|
||||
whenNewWindowLoaded({private: true}, function(win) {
|
||||
testTabTitle(win, "about:privatebrowsing", true, pb_about_pb_title, finish);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
return;
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Test title</title>
|
||||
</head>
|
||||
<body>
|
||||
Test page for the window title test
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue
Block a user