summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/general/browser_e10s_chrome_process.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/base/content/test/general/browser_e10s_chrome_process.js')
-rw-r--r--browser/base/content/test/general/browser_e10s_chrome_process.js150
1 files changed, 0 insertions, 150 deletions
diff --git a/browser/base/content/test/general/browser_e10s_chrome_process.js b/browser/base/content/test/general/browser_e10s_chrome_process.js
deleted file mode 100644
index 0726447ce..000000000
--- a/browser/base/content/test/general/browser_e10s_chrome_process.js
+++ /dev/null
@@ -1,150 +0,0 @@
-// Returns a function suitable for add_task which loads startURL, runs
-// transitionTask and waits for endURL to load, checking that the URLs were
-// loaded in the correct process.
-function makeTest(name, startURL, startProcessIsRemote, endURL, endProcessIsRemote, transitionTask) {
- return function*() {
- info("Running test " + name + ", " + transitionTask.name);
- let browser = gBrowser.selectedBrowser;
-
- // In non-e10s nothing should be remote
- if (!gMultiProcessBrowser) {
- startProcessIsRemote = false;
- endProcessIsRemote = false;
- }
-
- // Load the initial URL and make sure we are in the right initial process
- info("Loading initial URL");
- browser.loadURI(startURL);
- yield waitForDocLoadComplete();
-
- is(browser.currentURI.spec, startURL, "Shouldn't have been redirected");
- is(browser.isRemoteBrowser, startProcessIsRemote, "Should be displayed in the right process");
-
- let docLoadedPromise = waitForDocLoadComplete();
- let asyncTask = Task.async(transitionTask);
- let expectSyncChange = yield asyncTask(browser, endURL);
- if (expectSyncChange) {
- is(browser.isRemoteBrowser, endProcessIsRemote, "Should have switched to the right process synchronously");
- }
- yield docLoadedPromise;
-
- is(browser.currentURI.spec, endURL, "Should have made it to the final URL");
- is(browser.isRemoteBrowser, endProcessIsRemote, "Should be displayed in the right process");
- }
-}
-
-const CHROME_PROCESS = Ci.nsIXULRuntime.PROCESS_TYPE_DEFAULT;
-const CONTENT_PROCESS = Ci.nsIXULRuntime.PROCESS_TYPE_CONTENT;
-const PATH = (getRootDirectory(gTestPath) + "test_process_flags_chrome.html").replace("chrome://mochitests", "");
-
-const CHROME = "chrome://mochitests" + PATH;
-const CANREMOTE = "chrome://mochitests-any" + PATH;
-const MUSTREMOTE = "chrome://mochitests-content" + PATH;
-
-add_task(function* init() {
- gBrowser.selectedTab = gBrowser.addTab("about:blank");
-});
-
-registerCleanupFunction(() => {
- gBrowser.removeCurrentTab();
-});
-
-function test_url(url, chromeResult, contentResult) {
- is(E10SUtils.canLoadURIInProcess(url, CHROME_PROCESS),
- chromeResult, "Check URL in chrome process.");
- is(E10SUtils.canLoadURIInProcess(url, CONTENT_PROCESS),
- contentResult, "Check URL in content process.");
-
- is(E10SUtils.canLoadURIInProcess(url + "#foo", CHROME_PROCESS),
- chromeResult, "Check URL with ref in chrome process.");
- is(E10SUtils.canLoadURIInProcess(url + "#foo", CONTENT_PROCESS),
- contentResult, "Check URL with ref in content process.");
-
- is(E10SUtils.canLoadURIInProcess(url + "?foo", CHROME_PROCESS),
- chromeResult, "Check URL with query in chrome process.");
- is(E10SUtils.canLoadURIInProcess(url + "?foo", CONTENT_PROCESS),
- contentResult, "Check URL with query in content process.");
-
- is(E10SUtils.canLoadURIInProcess(url + "?foo#bar", CHROME_PROCESS),
- chromeResult, "Check URL with query and ref in chrome process.");
- is(E10SUtils.canLoadURIInProcess(url + "?foo#bar", CONTENT_PROCESS),
- contentResult, "Check URL with query and ref in content process.");
-}
-
-add_task(function* test_chrome() {
- test_url(CHROME, true, false);
-});
-
-add_task(function* test_any() {
- test_url(CANREMOTE, true, true);
-});
-
-add_task(function* test_remote() {
- test_url(MUSTREMOTE, false, true);
-});
-
-// The set of page transitions
-var TESTS = [
- [
- "chrome -> chrome",
- CHROME, false,
- CHROME, false,
- ],
- [
- "chrome -> canremote",
- CHROME, false,
- CANREMOTE, false,
- ],
- [
- "chrome -> mustremote",
- CHROME, false,
- MUSTREMOTE, true,
- ],
- [
- "remote -> chrome",
- MUSTREMOTE, true,
- CHROME, false,
- ],
- [
- "remote -> canremote",
- MUSTREMOTE, true,
- CANREMOTE, true,
- ],
- [
- "remote -> mustremote",
- MUSTREMOTE, true,
- MUSTREMOTE, true,
- ],
-];
-
-// The different ways to transition from one page to another
-var TRANSITIONS = [
-// Loads the new page by calling browser.loadURI directly
-function* loadURI(browser, uri) {
- info("Calling browser.loadURI");
- yield BrowserTestUtils.loadURI(browser, uri);
- return true;
-},
-
-// Loads the new page by finding a link with the right href in the document and
-// clicking it
-function* clickLink(browser, uri) {
- info("Clicking link");
-
- function frame_script(frameUri) {
- let link = content.document.querySelector("a[href='" + frameUri + "']");
- link.click();
- }
-
- browser.messageManager.loadFrameScript("data:,(" + frame_script.toString() + ")(" + JSON.stringify(uri) + ");", false);
-
- return false;
-},
-];
-
-// Creates a set of test tasks, one for each combination of TESTS and TRANSITIONS.
-for (let test of TESTS) {
- for (let transition of TRANSITIONS) {
- add_task(makeTest(...test, transition));
- }
-}