Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

function check_clear_visible(browser, aVisible) {
return SpecialPowers.spawn(browser, [aVisible], function (aVisible) {
const doc = content.document;
let visible = false;
const reportListSubmitted = doc.getElementById("reportListSubmitted");
if (reportListSubmitted) {
const style = doc.defaultView.getComputedStyle(reportListSubmitted);
if (style.display !== "none" && style.visibility === "visible") {
visible = true;
}
}
Assert.equal(
visible,
aVisible,
"clear submitted reports button is " + (aVisible ? "visible" : "hidden")
);
});
}
// each test here has a setup (run before loading about:crashes) and onload (run after about:crashes loads)
var _tests = [
{
setup: null,
onload(browser) {
return check_clear_visible(browser, false);
},
},
{
setup(crD) {
return add_fake_crashes(crD, 1);
},
onload(browser) {
return check_clear_visible(browser, true);
},
},
];
add_task(async function test() {
let appD = make_fake_appdir();
let crD = appD.clone();
crD.append("Crash Reports");
await BrowserTestUtils.withNewTab(
{ gBrowser, url: "about:blank" },
async function (browser) {
for (let test of _tests) {
// Run setup before loading about:crashes.
if (test.setup) {
await test.setup(crD);
}
BrowserTestUtils.startLoadingURIString(browser, "about:crashes");
await BrowserTestUtils.browserLoaded(browser).then(() =>
test.onload(browser)
);
}
}
);
cleanup_fake_appdir();
});