Bug 1372664 - Fix browser_messagemanager_loadprocessscript.js to pass when Activity Stream is enabled
MozReview-Commit-ID: HblEC3Qi3pm
--- a/dom/base/test/browser_messagemanager_loadprocessscript.js
+++ b/dom/base/test/browser_messagemanager_loadprocessscript.js
@@ -1,10 +1,13 @@
var ppmm = Cc["@mozilla.org/parentprocessmessagemanager;1"]
.getService(Ci.nsIMessageBroadcaster);
+
+var BASE_NUMBER_OF_PROCESSES = Services.prefs.getBoolPref("browser.newtabpage.activity-stream.enabled") ? 4 : 3;
+
ppmm.QueryInterface(Ci.nsIProcessScriptLoader);
function processScript() {
let cpmm = Components.classes["@mozilla.org/childprocessmessagemanager;1"]
.getService(Components.interfaces.nsISyncMessageSender);
if (cpmm !== this) {
dump("Test failed: wrong global object\n");
return;
@@ -71,17 +74,17 @@ add_task(function*(){
tabs[i] = yield BrowserTestUtils.openNewForegroundTab(gBrowser, "about:blank");
}
for (let i = 0; i < 3; i++) {
yield BrowserTestUtils.removeTab(tabs[i]);
}
ppmm.releaseCachedProcesses();
- is(ppmm.childCount, 3, "Should get back to 3 processes at this point.");
+ is(ppmm.childCount, BASE_NUMBER_OF_PROCESSES, `Should be back to ${BASE_NUMBER_OF_PROCESSES} processes at this point`);
})
// Test that loading a process script loads in all existing processes
add_task(function*() {
let checks = [];
for (let i = 0; i < ppmm.childCount; i++)
checks.push(checkProcess(ppmm.getChildAt(i)));
@@ -90,17 +93,17 @@ add_task(function*() {
});
// Test that loading a process script loads in new processes
add_task(function*() {
// This test is only relevant in e10s
if (!gMultiProcessBrowser)
return;
- is(ppmm.childCount, 3, "Should be three processes at this point");
+ is(ppmm.childCount, BASE_NUMBER_OF_PROCESSES, `Should be ${BASE_NUMBER_OF_PROCESSES} processes at this point`);
// Load something in the main process
gBrowser.selectedBrowser.loadURI("about:robots");
yield BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser);
let init = ppmm.initialProcessData;
init.test123 = "hello";
init.test456 = new Map();
@@ -120,17 +123,17 @@ add_task(function*() {
yield check;
check = checkProcess(ppmm);
// Reset the default browser to start a new child process
gBrowser.updateBrowserRemoteness(gBrowser.selectedBrowser, true);
gBrowser.selectedBrowser.loadURI("about:blank");
yield BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser);
- is(ppmm.childCount, 3, "Should be back to three processes at this point");
+ is(ppmm.childCount, BASE_NUMBER_OF_PROCESSES, `Should be back to ${BASE_NUMBER_OF_PROCESSES} processes at this point`);
// The new process should have responded
yield check;
ppmm.removeDelayedProcessScript(processScriptURL);
let childMM;
childMM = ppmm.getChildAt(2);