summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/webappapis/user-prompts/print-during-beforeunload.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/html/webappapis/user-prompts/print-during-beforeunload.html')
-rw-r--r--testing/web-platform/tests/html/webappapis/user-prompts/print-during-beforeunload.html29
1 files changed, 29 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/webappapis/user-prompts/print-during-beforeunload.html b/testing/web-platform/tests/html/webappapis/user-prompts/print-during-beforeunload.html
new file mode 100644
index 0000000000..5925bdde4d
--- /dev/null
+++ b/testing/web-platform/tests/html/webappapis/user-prompts/print-during-beforeunload.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>print() during beforeunload</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+<script>
+"use strict";
+
+async_test(t => {
+ const w = window.open("resources/print-during-event.sub.html?event=beforeunload");
+ t.add_cleanup(() => w.close());
+
+ const messages = [];
+ window.addEventListener("message", t.step_func(({ data }) => {
+ messages.push(data);
+
+ if (messages.length === 1) {
+ assert_array_equals(messages, ["start"]);
+ w.location.href = "resources/destination.html";
+ } else if (messages.length === 2) {
+ // The test passes if we've reached this point because the print() dialog did not block the navigation.
+ assert_array_equals(messages, ["start", "destination"]);
+ t.done();
+ }
+ }));
+});
+</script>