Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Errors
- This test gets skipped with pattern: os == 'win' && os_version == '11.26200' && asan
- This test failed 4 times in the preceding 30 days. quicksearch this test
- Manifest: dom/tests/browser/browser.toml
/* Any copyright is dedicated to the Public Domain.
"use strict";
add_setup(async function () {
await SpecialPowers.pushPrefEnv({
set: [["test.wait300msAfterTabSwitch", true]],
});
});
add_task(async function test_check_alert_from_blank() {
await BrowserTestUtils.withNewTab(
async browser => {
await SpecialPowers.spawn(browser, [], () => {
let button = content.document.createElement("button");
button.addEventListener("click", () => {
info("Button onclick: opening about:blank");
let newWin = content.open(
"about:blank",
"",
"popup,width=600,height=600"
);
// Start an async navigation that will close the alert
// Previously this wasn't needed as the initial about:blank
// was followed by an async about:blank load. See Bug 543435
newWin.location = "about:blank?0";
newWin.alert("Alert from the popup.");
info("Button onclick: finished");
});
content.document.body.append(button);
info(
"Added alert-from-about-blank-popup trigger button to " +
content.document.location.href
);
});
let newWinPromise = BrowserTestUtils.waitForNewWindow();
await BrowserTestUtils.synthesizeMouseAtCenter("button", {}, browser);
// otherWin is the same as newWin
let otherWin = await newWinPromise;
Assert.equal(
otherWin.gBrowser.currentURI?.spec,
"about:blank",
"Should have opened about:blank"
);
Assert.equal(
otherWin.menubar.visible,
false,
"Should be a popup window."
);
let contentDialogManager = gBrowser
.getTabDialogBox(gBrowser.selectedBrowser)
.getContentDialogManager();
todo_is(contentDialogManager._dialogs.length, 1, "Should have 1 dialog.");
await BrowserTestUtils.closeWindow(otherWin);
}
);
});