summaryrefslogtreecommitdiffstats
path: root/toolkit/mozapps/update/tests/browser/browser_doorhanger_bc_downloadOptIn_bgWin.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 /toolkit/mozapps/update/tests/browser/browser_doorhanger_bc_downloadOptIn_bgWin.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 'toolkit/mozapps/update/tests/browser/browser_doorhanger_bc_downloadOptIn_bgWin.js')
-rw-r--r--toolkit/mozapps/update/tests/browser/browser_doorhanger_bc_downloadOptIn_bgWin.js63
1 files changed, 63 insertions, 0 deletions
diff --git a/toolkit/mozapps/update/tests/browser/browser_doorhanger_bc_downloadOptIn_bgWin.js b/toolkit/mozapps/update/tests/browser/browser_doorhanger_bc_downloadOptIn_bgWin.js
new file mode 100644
index 0000000000..17dcce57ce
--- /dev/null
+++ b/toolkit/mozapps/update/tests/browser/browser_doorhanger_bc_downloadOptIn_bgWin.js
@@ -0,0 +1,63 @@
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+add_task(async function doorhanger_bc_downloadOptIn_bgWin() {
+ function getBackgroundWindowHandler() {
+ return async function () {
+ await TestUtils.waitForCondition(
+ () => PanelUI.menuButton.hasAttribute("badge-status"),
+ "Background window has a badge.",
+ undefined,
+ 200
+ ).catch(e => {
+ // Instead of throwing let the check below fail the test.
+ logTestInfo(e);
+ });
+ ok(
+ PanelUI.menuButton.hasAttribute("badge-status"),
+ "PanelUI.menuButton should have a 'badge-status' attribute"
+ );
+ is(
+ PanelUI.notificationPanel.state,
+ "closed",
+ "The doorhanger is not showing for the background window"
+ );
+ is(
+ PanelUI.menuButton.getAttribute("badge-status"),
+ "update-available",
+ "The badge is showing for the background window"
+ );
+ let popupShownPromise = BrowserTestUtils.waitForEvent(
+ PanelUI.notificationPanel,
+ "popupshown"
+ );
+ await BrowserTestUtils.closeWindow(extraWindow);
+ await SimpleTest.promiseFocus(window);
+ await popupShownPromise;
+
+ let buttonEl = getNotificationButton(
+ window,
+ "update-available",
+ "button"
+ );
+ buttonEl.click();
+ };
+ }
+
+ await UpdateUtils.setAppUpdateAutoEnabled(false);
+
+ let extraWindow = await BrowserTestUtils.openNewBrowserWindow();
+ await SimpleTest.promiseFocus(extraWindow);
+
+ let params = { checkAttempts: 1, queryString: "&promptWaitTime=0" };
+ await runDoorhangerUpdateTest(params, [
+ getBackgroundWindowHandler(),
+ {
+ notificationId: "update-restart",
+ button: "secondaryButton",
+ checkActiveUpdate: { state: STATE_PENDING },
+ },
+ ]);
+});