summaryrefslogtreecommitdiffstats
path: root/browser/components/sessionstore/test/browser_parentProcessRestoreHash.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/sessionstore/test/browser_parentProcessRestoreHash.js')
-rw-r--r--browser/components/sessionstore/test/browser_parentProcessRestoreHash.js95
1 files changed, 0 insertions, 95 deletions
diff --git a/browser/components/sessionstore/test/browser_parentProcessRestoreHash.js b/browser/components/sessionstore/test/browser_parentProcessRestoreHash.js
deleted file mode 100644
index 1deb461c8..000000000
--- a/browser/components/sessionstore/test/browser_parentProcessRestoreHash.js
+++ /dev/null
@@ -1,95 +0,0 @@
-"use strict";
-
-const SELFCHROMEURL =
- "chrome://mochitests/content/browser/browser/" +
- "components/sessionstore/test/browser_parentProcessRestoreHash.js";
-
-const Cm = Components.manager;
-
-const TESTCLASSID = "78742c04-3630-448c-9be3-6c5070f062de";
-
-const TESTURL = "about:testpageforsessionrestore#foo";
-
-
-let TestAboutPage = {
- QueryInterface: XPCOMUtils.generateQI([Ci.nsIAboutModule]),
- getURIFlags: function(aURI) {
- // No CAN_ or MUST_LOAD_IN_CHILD means this loads in the parent:
- return Ci.nsIAboutModule.ALLOW_SCRIPT |
- Ci.nsIAboutModule.URI_SAFE_FOR_UNTRUSTED_CONTENT |
- Ci.nsIAboutModule.HIDE_FROM_ABOUTABOUT;
- },
-
- newChannel: function(aURI, aLoadInfo) {
- // about: page inception!
- let newURI = Services.io.newURI(SELFCHROMEURL, null, null);
- let channel = Services.io.newChannelFromURIWithLoadInfo(newURI,
- aLoadInfo);
- channel.originalURI = aURI;
- return channel;
- },
-
- createInstance: function(outer, iid) {
- if (outer != null) {
- throw Cr.NS_ERROR_NO_AGGREGATION;
- }
- return this.QueryInterface(iid);
- },
-
- register: function() {
- Cm.QueryInterface(Ci.nsIComponentRegistrar).registerFactory(
- Components.ID(TESTCLASSID), "Only here for a test",
- "@mozilla.org/network/protocol/about;1?what=testpageforsessionrestore", this);
- },
-
- unregister: function() {
- Cm.QueryInterface(Ci.nsIComponentRegistrar).unregisterFactory(
- Components.ID(TESTCLASSID), this);
- }
-};
-
-
-/**
- * Test that switching from a remote to a parent process browser
- * correctly clears the userTypedValue
- */
-add_task(function* () {
- TestAboutPage.register();
- let tab = yield BrowserTestUtils.openNewForegroundTab(gBrowser, "http://example.com/", true, true);
- ok(tab.linkedBrowser.isRemoteBrowser, "Browser should be remote");
-
- let resolveLocationChangePromise;
- let locationChangePromise = new Promise(r => resolveLocationChangePromise = r);
- let wpl = {
- onStateChange(wpl, request, state, status) {
- let location = request.QueryInterface(Ci.nsIChannel).originalURI;
- // Ignore about:blank loads.
- let docStop = Ci.nsIWebProgressListener.STATE_STOP |
- Ci.nsIWebProgressListener.STATE_IS_NETWORK;
- if (location.spec == "about:blank" || (state & docStop == docStop)) {
- return;
- }
- is(location.spec, TESTURL, "Got the expected URL");
- resolveLocationChangePromise();
- },
- };
- gBrowser.addProgressListener(wpl);
-
- gURLBar.value = TESTURL;
- gURLBar.select();
- EventUtils.sendKey("return");
-
- yield locationChangePromise;
-
- ok(!tab.linkedBrowser.isRemoteBrowser, "Browser should no longer be remote");
-
- is(gURLBar.textValue, TESTURL, "URL bar visible value should be correct.");
- is(gURLBar.value, TESTURL, "URL bar value should be correct.");
- is(gURLBar.getAttribute("pageproxystate"), "valid", "URL bar is in valid page proxy state");
-
- ok(!tab.linkedBrowser.userTypedValue, "No userTypedValue should be on the browser.");
-
- yield BrowserTestUtils.removeTab(tab);
- gBrowser.removeProgressListener(wpl);
- TestAboutPage.unregister();
-});