<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>WebShare Test: consume user activation</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <script src="resources/manual-helper.js"></script>
    <script src="/resources/testdriver.js"></script>
    <script src="/resources/testdriver-vendor.js"></script>
  </head>
  <body>
    <script>
      promise_test(async t => {
        // Not activated by user gesture, so not allowed!
        await promise_rejects_dom(t, "NotAllowedError", navigator.share());

        await test_driver.bless("web share");

        // We have a gesture, but the URL is invalid - so TypeError!
        await promise_rejects_js(
          t,
          TypeError,
          navigator.share({ url: "http://example.com:65536" })
        );

        // The activation has been consumed, so calling share() again would require
        // a new gesture.
        await promise_rejects_dom(t, "NotAllowedError", navigator.share());
      }, "Calling share consumes user activation");
    </script>
  </body>
</html>
