fune/browser/base/content/test/tabcrashed/browser_noPermanentKey.js
Kris Maglione 94e3b0bd8d Bug 1596918: Part 3a - Scripted rewrite of most ContentTask.spawn calls to SpecialPowers.spawn calls. r=mccr8,remote-protocol-reviewers,ato
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.

Differential Revision: https://phabricator.services.mozilla.com/D53740

--HG--
extra : moz-landing-system : lando
2019-12-13 20:36:16 +00:00

41 lines
1.1 KiB
JavaScript

"use strict";
const PAGE =
"data:text/html,<html><body>A%20regular,%20everyday,%20normal%20page.";
add_task(async function setup() {
await setupLocalCrashReportServer();
});
/**
* Tests tab crash page when a browser that somehow doesn't have a permanentKey
* crashes.
*/
add_task(async function test_without_dump() {
return BrowserTestUtils.withNewTab(
{
gBrowser,
url: PAGE,
},
async function(browser) {
delete browser.permanentKey;
await BrowserTestUtils.crashFrame(browser);
let crashReport = promiseCrashReport();
await SpecialPowers.spawn(browser, [], async function() {
let doc = content.document;
Assert.ok(
doc.documentElement.classList.contains("crashDumpAvailable"),
"Should be offering to submit a crash report."
);
// With the permanentKey gone, restoring this tab is no longer
// possible. We'll just close it instead.
let closeTab = doc.getElementById("closeTab");
closeTab.click();
});
await crashReport;
}
);
});