summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/navigation-api/commit-behavior/after-transition-traverse.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/navigation-api/commit-behavior/after-transition-traverse.html')
-rw-r--r--testing/web-platform/tests/navigation-api/commit-behavior/after-transition-traverse.html29
1 files changed, 29 insertions, 0 deletions
diff --git a/testing/web-platform/tests/navigation-api/commit-behavior/after-transition-traverse.html b/testing/web-platform/tests/navigation-api/commit-behavior/after-transition-traverse.html
new file mode 100644
index 0000000000..7dd1226e54
--- /dev/null
+++ b/testing/web-platform/tests/navigation-api/commit-behavior/after-transition-traverse.html
@@ -0,0 +1,29 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="../navigation-methods/return-value/resources/helpers.js"></script>
+<script src="resources/after-transition-commit-helpers.js"></script>
+<body>
+<script>
+let tests = [
+ { mode: "rejectBeforeCommit", destinationIndex: 0, description: "{ commit: 'after-transition' } for a traverse navigation, reject before commit" },
+ { mode: "rejectAfterCommit", destinationIndex: 1, description: "{ commit: 'after-transition' } for a traverse navigation, reject after commit" },
+ { mode: "successExplicitCommit", destinationIndex: 2, description: "{ commit: 'after-transition' } for a traverse navigation, explicit commit()" },
+ { mode: "successNoExplicitCommit", destinationIndex: 3, description: "{ commit: 'after-transition' } for a traverse navigation, commit when handler resolves" }
+];
+
+// Push a bunch of history entries so each test case can target a unique entry.
+history.pushState("", "", "#1");
+history.pushState("", "", "#2");
+history.pushState("", "", "#3");
+history.pushState("", "", "#4");
+
+let onload_promise = new Promise(resolve => window.onload = resolve);
+for (let test of tests) {
+ promise_test(async t => {
+ await onload_promise;
+ await testAfterTransitionCommit(t, "traverse", test.mode, test.destinationIndex);
+ }, test.description);
+}
+</script>
+</body>