summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/tabcrashed/browser_withoutDump.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/base/content/test/tabcrashed/browser_withoutDump.js')
-rw-r--r--browser/base/content/test/tabcrashed/browser_withoutDump.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/browser/base/content/test/tabcrashed/browser_withoutDump.js b/browser/base/content/test/tabcrashed/browser_withoutDump.js
new file mode 100644
index 000000000..62557f443
--- /dev/null
+++ b/browser/base/content/test/tabcrashed/browser_withoutDump.js
@@ -0,0 +1,36 @@
+"use strict";
+
+const PAGE = "data:text/html,<html><body>A%20regular,%20everyday,%20normal%20page.";
+
+add_task(function* setup() {
+ prepareNoDump();
+});
+
+/**
+ * Tests tab crash page when a dump is not available.
+ */
+add_task(function* test_without_dump() {
+ return BrowserTestUtils.withNewTab({
+ gBrowser,
+ url: PAGE,
+ }, function*(browser) {
+ let tab = gBrowser.getTabForBrowser(browser);
+ yield BrowserTestUtils.crashBrowser(browser);
+
+ let tabRemovedPromise = BrowserTestUtils.removeTab(tab, { dontRemove: true });
+
+ yield ContentTask.spawn(browser, null, function*() {
+ let doc = content.document;
+ Assert.ok(!doc.documentElement.classList.contains("crashDumpAvailable"),
+ "doesn't have crash dump");
+
+ let options = doc.getElementById("options");
+ Assert.ok(options, "has crash report options");
+ Assert.ok(options.hidden, "crash report options are hidden");
+
+ doc.getElementById("closeTab").click();
+ });
+
+ yield tabRemovedPromise;
+ });
+});