<!doctype html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<a id="a" href="?1">Click me</a>
<script>
async_test(t => {
  a.download = "";
  navigation.onnavigate = t.step_func(e => {
    assert_equals(e.navigationType, "push");
    assert_true(e.cancelable);
    assert_true(e.canIntercept);
    assert_true(e.userInitiated);
    assert_false(e.hashChange);
    assert_equals(e.downloadRequest, "");
    assert_equals(e.formData, null);
    assert_equals(new URL(e.destination.url).search, "?1");
    assert_false(e.destination.sameDocument);
    assert_equals(e.destination.key, "");
    assert_equals(e.destination.id, "");
    assert_equals(e.destination.index, -1);
    assert_equals(e.sourceElement, document.getElementById("a"));
    e.preventDefault();
    t.step_timeout(t.step_func_done(() => assert_equals(location.hash, "")), 0);
  });
  test_driver.click(a);
}, "<a download> click fires navigate event");
</script>
