<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>show() consumes user activation</title>
    <link rel="help" href="https://w3c.github.io/payment-request/#show-method" />
    <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>
  </head>
  <body>
    <script>
      const defaultMethods = [
        { supportedMethods: "basic-card" },
        {
          supportedMethods: "https://apple.com/apple-pay",
          data: {
            version: 3,
            merchantIdentifier: "merchant.com.example",
            countryCode: "US",
            merchantCapabilities: ["supports3DS"],
            supportedNetworks: ["visa"],
          },
        },
      ];

      const defaultDetails = {
        total: {
          label: "Total",
          amount: {
            currency: "USD",
            value: "1.00",
          },
        },
      };
      promise_test(async t => {
        const pr = new PaymentRequest(defaultMethods, defaultDetails);

        await test_driver.bless("Calls show() method");
        const showPromise = pr.show();

        // The activation has been consumed.
        assert_false(navigator.userActivation.isActive);

        // Abort the payment request
        pr.abort()
        await promise_rejects_dom(t, "AbortError", showPromise);
      }, "Calling show consumes user activation, if present");
    </script>
  </body>
</html>
