<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>

<script>
promise_test(async t => {
  assert_equals(appHistory.transition, null);

  const events = [];

  appHistory.addEventListener("navigate", t.step_func(e => {
    events.push("navigate");

    e.preventDefault();
    assert_equals(appHistory.transition, null);
  }));

  appHistory.addEventListener("navigateerror", t.step_func(() => {
    events.push("navigateerror");

    assert_equals(appHistory.transition, null);
  }));

  await promise_rejects_dom(t, "AbortError", appHistory.navigate("?1").committed);
  assert_equals(appHistory.transition, null);
  assert_array_equals(events, ["navigate", "navigateerror"]);
}, "canceled navigate()");
</script>
