summaryrefslogtreecommitdiffstats
path: root/toolkit/components/startup/tests/browser/head.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/startup/tests/browser/head.js')
-rw-r--r--toolkit/components/startup/tests/browser/head.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/toolkit/components/startup/tests/browser/head.js b/toolkit/components/startup/tests/browser/head.js
new file mode 100644
index 0000000000..4ebc19f80e
--- /dev/null
+++ b/toolkit/components/startup/tests/browser/head.js
@@ -0,0 +1,28 @@
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+const { PromptTestUtils } = ChromeUtils.importESModule(
+ "resource://testing-common/PromptTestUtils.sys.mjs"
+);
+
+function whenBrowserLoaded(browser, callback) {
+ return BrowserTestUtils.browserLoaded(browser).then(callback);
+}
+
+function waitForOnBeforeUnloadDialog(browser, callback) {
+ PromptTestUtils.waitForPrompt(browser, {
+ modalType: Services.prompt.MODAL_TYPE_CONTENT,
+ promptType: "confirmEx",
+ }).then(dialog => {
+ SimpleTest.waitForCondition(
+ () => Services.focus.activeWindow == browser.ownerGlobal,
+ function () {
+ let { button0, button1 } = dialog.ui;
+ callback(button0, button1);
+ },
+ "Waited too long for window with dialog to focus"
+ );
+ });
+}