summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/tabs/browser_file_to_http_script_closable.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /browser/base/content/test/tabs/browser_file_to_http_script_closable.js
parentInitial commit. (diff)
downloadthunderbird-upstream.tar.xz
thunderbird-upstream.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'browser/base/content/test/tabs/browser_file_to_http_script_closable.js')
-rw-r--r--browser/base/content/test/tabs/browser_file_to_http_script_closable.js43
1 files changed, 43 insertions, 0 deletions
diff --git a/browser/base/content/test/tabs/browser_file_to_http_script_closable.js b/browser/base/content/test/tabs/browser_file_to_http_script_closable.js
new file mode 100644
index 0000000000..00ef3d7322
--- /dev/null
+++ b/browser/base/content/test/tabs/browser_file_to_http_script_closable.js
@@ -0,0 +1,43 @@
+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
+/* vim: set ft=javascript ts=2 et sw=2 tw=80: */
+
+const TEST_FILE = fileURL("dummy_page.html");
+const TEST_HTTP = httpURL("tab_that_closes.html");
+
+// Test for Bug 1632441
+add_task(async function () {
+ await SpecialPowers.pushPrefEnv({
+ set: [["dom.allow_scripts_to_close_windows", false]],
+ });
+
+ await BrowserTestUtils.withNewTab(TEST_FILE, async function (fileBrowser) {
+ info("Tab ready");
+
+ // The request will open a new tab, capture the new tab and the load in it.
+ info("Creating promise");
+ var newTabPromise = BrowserTestUtils.waitForNewTab(
+ gBrowser,
+ url => {
+ return url.endsWith("tab_that_closes.html");
+ },
+ true,
+ false
+ );
+
+ // Click the link, which will post to target="_blank"
+ info("Creating and clicking link");
+ await SpecialPowers.spawn(fileBrowser, [TEST_HTTP], target => {
+ content.open(target);
+ });
+
+ // The new tab will load.
+ info("Waiting for load");
+ var newTab = await newTabPromise;
+ ok(newTab, "Tab is loaded");
+ info("waiting for it to close");
+ await BrowserTestUtils.waitForTabClosing(newTab);
+ ok(true, "The test completes without a timeout");
+ });
+
+ await SpecialPowers.popPrefEnv();
+});