<!doctype html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
async_test(t => {
  navigation.onnavigatesuccess = t.step_func_done(e => {
    assert_equals(location.hash, "#1");
    assert_equals(e.constructor, Event);
    assert_false(e.bubbles);
    assert_false(e.cancelable);
  });
  navigation.onnavigateerror = t.step_func_done(assert_unreached);
  navigation.onnavigate = e => e.intercept({ handler() { return "123"; }});

  location.href = "#1";
  assert_equals(location.hash, "#1");
}, "event.intercept() should resolve immediately if the handler doesn't return a promise");
</script>
