diff options
Diffstat (limited to 'testing/web-platform/tests/navigation-api/commit-behavior/after-transition-new-navigation-before-commit.html')
-rw-r--r-- | testing/web-platform/tests/navigation-api/commit-behavior/after-transition-new-navigation-before-commit.html | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/testing/web-platform/tests/navigation-api/commit-behavior/after-transition-new-navigation-before-commit.html b/testing/web-platform/tests/navigation-api/commit-behavior/after-transition-new-navigation-before-commit.html new file mode 100644 index 0000000000..2d09d40dc9 --- /dev/null +++ b/testing/web-platform/tests/navigation-api/commit-behavior/after-transition-new-navigation-before-commit.html @@ -0,0 +1,25 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="../navigation-methods/return-value/resources/helpers.js"></script> +<body> +<script> +promise_test(async t => { + navigation.addEventListener("navigate", e => e.intercept({ commit: "after-transition" }), { once: "true" }); + + let navigateerror_called = false; + navigation.onnavigateerror = t.step_func(() => { + navigateerror_called = true; + assert_equals(location.hash, ""); + }); + + let promises_should_not_commit = navigation.navigate("#ShouldNotCommit"); + let promises_fulfilled = navigation.navigate("#1"); + await assertBothRejectDOM(t, promises_should_not_commit, "AbortError"); + await assertBothFulfill(t, promises_fulfilled, navigation.currentEntry); + + assert_equals(location.hash, "#1"); + assert_true(navigateerror_called); +}, "Cancel a { commit: 'after-transition' } navigation before commit() by starting a new navigation"); +</script> +</body> |