Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

/* Any copyright is dedicated to the Public Domain.
"use strict";
add_task(async function test_check_file_prompt() {
let initialTab = gBrowser.selectedTab;
await BrowserTestUtils.withNewTab("about:blank", async browser => {
await BrowserTestUtils.switchTab(gBrowser, initialTab);
let testHelper = async function (uri, expectedValue) {
BrowserTestUtils.startLoadingURIString(browser, uri);
await BrowserTestUtils.browserLoaded(browser, false, uri);
let dialogFinishedShowing = TestUtils.topicObserved(
"common-dialog-loaded"
);
await SpecialPowers.spawn(browser, [], () => {
content.setTimeout(() => {
content.alert("Hello");
}, 0);
});
let [dialogWin] = await dialogFinishedShowing;
let checkbox = dialogWin.document.getElementById("checkbox");
info("Got: " + checkbox.label);
ok(
checkbox.label.includes(expectedValue),
`Checkbox label should mention domain (${expectedValue}).`
);
dialogWin.document.querySelector("dialog").acceptDialog();
};
await testHelper("https://example.com/1", "example.com");
await testHelper("about:robots", "about:");
let file = Services.io.newFileURI(
Services.dirsvc.get("Desk", Ci.nsIFile)
).spec;
await testHelper(file, "file://");
});
});