41 lines
1.4 KiB
JavaScript
41 lines
1.4 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
"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://");
|
|
});
|
|
});
|