summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/tabcrashed/browser_clearEmail.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/base/content/test/tabcrashed/browser_clearEmail.js')
-rw-r--r--browser/base/content/test/tabcrashed/browser_clearEmail.js85
1 files changed, 0 insertions, 85 deletions
diff --git a/browser/base/content/test/tabcrashed/browser_clearEmail.js b/browser/base/content/test/tabcrashed/browser_clearEmail.js
deleted file mode 100644
index 9ec04944f..000000000
--- a/browser/base/content/test/tabcrashed/browser_clearEmail.js
+++ /dev/null
@@ -1,85 +0,0 @@
-"use strict";
-
-const SERVER_URL = "http://example.com/browser/toolkit/crashreporter/test/browser/crashreport.sjs";
-const PAGE = "data:text/html,<html><body>A%20regular,%20everyday,%20normal%20page.";
-const EMAIL = "foo@privacy.com";
-
-/**
- * Sets up the browser to send crash reports to the local crash report
- * testing server.
- */
-add_task(function* setup() {
- // The test harness sets MOZ_CRASHREPORTER_NO_REPORT, which disables crash
- // reports. This test needs them enabled. The test also needs a mock
- // report server, and fortunately one is already set up by toolkit/
- // crashreporter/test/Makefile.in. Assign its URL to MOZ_CRASHREPORTER_URL,
- // which CrashSubmit.jsm uses as a server override.
- let env = Cc["@mozilla.org/process/environment;1"]
- .getService(Components.interfaces.nsIEnvironment);
- let noReport = env.get("MOZ_CRASHREPORTER_NO_REPORT");
- let serverUrl = env.get("MOZ_CRASHREPORTER_URL");
- env.set("MOZ_CRASHREPORTER_NO_REPORT", "");
- env.set("MOZ_CRASHREPORTER_URL", SERVER_URL);
-
- // By default, requesting the email address of the user is disabled.
- // For the purposes of this test, we turn it back on.
- yield SpecialPowers.pushPrefEnv({
- set: [["browser.tabs.crashReporting.requestEmail", true]],
- });
-
- registerCleanupFunction(function() {
- env.set("MOZ_CRASHREPORTER_NO_REPORT", noReport);
- env.set("MOZ_CRASHREPORTER_URL", serverUrl);
- });
-});
-
-/**
- * Test that if we have an email address stored in prefs, and we decide
- * not to submit the email address in the next crash report, that we
- * clear the email address.
- */
-add_task(function* test_clear_email() {
- return BrowserTestUtils.withNewTab({
- gBrowser,
- url: PAGE,
- }, function*(browser) {
- let prefs = TabCrashHandler.prefs;
- let originalSendReport = prefs.getBoolPref("sendReport");
- let originalEmailMe = prefs.getBoolPref("emailMe");
- let originalIncludeURL = prefs.getBoolPref("includeURL");
- let originalEmail = prefs.getCharPref("email");
-
- // Pretend that we stored an email address from the previous
- // crash
- prefs.setCharPref("email", EMAIL);
- prefs.setBoolPref("emailMe", true);
-
- let tab = gBrowser.getTabForBrowser(browser);
- yield BrowserTestUtils.crashBrowser(browser);
- let doc = browser.contentDocument;
-
- // Since about:tabcrashed will run in the parent process, we can safely
- // manipulate its DOM nodes directly
- let emailMe = doc.getElementById("emailMe");
- emailMe.checked = false;
-
- let crashReport = promiseCrashReport({
- Email: "",
- });
-
- let restoreTab = browser.contentDocument.getElementById("restoreTab");
- restoreTab.click();
- yield BrowserTestUtils.waitForEvent(tab, "SSTabRestored");
- yield crashReport;
-
- is(prefs.getCharPref("email"), "", "No email address should be stored");
-
- // Submitting the crash report may have set some prefs regarding how to
- // send tab crash reports. Let's reset them for the next test.
- prefs.setBoolPref("sendReport", originalSendReport);
- prefs.setBoolPref("emailMe", originalEmailMe);
- prefs.setBoolPref("includeURL", originalIncludeURL);
- prefs.setCharPref("email", originalEmail);
- });
-});
-