blob: 1dc01fcb8f79b1bd1d45f538516ef03040a6a663 [file] [log] [blame]
<!doctype html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
async_test(t => {
let events = [];
function finish() {
assert_array_equals(events, ["onnavigate", "onnavigateerror", "promiserejected"]);
t.done();
}
appHistory.onnavigate = e => {
events.push("onnavigate");
e.transitionWhile(Promise.reject());
};
appHistory.onnavigatesuccess = () => events.push("onnavigatesuccess");
appHistory.onnavigateerror = () => events.push("onnavigateerror");
window.onhashchange = () => events.push("onhashchange");
window.onpopstate = () => events.push("onpopstate");
appHistory.navigate("#1").then(
() => events.push("promisefulfilled"),
() => {
events.push("promiserejected");
t.step_timeout(finish, 0);
});
}, "navigate() event ordering for same-document navigation");
</script>