<!DOCTYPE html>
<body>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
<script>
  "use strict";

  const same_origin_src =
    "/feature-policy/resources/feature-policy-wakelock.html";
  const cross_origin_src =
    "https://{{domains[www]}}:{{ports[https][0]}}" + same_origin_src;

  promise_test(t => {
    const controller = new AbortController();
    const lock = WakeLock.request("screen", { signal: controller.signal });
    controller.abort();
    return promise_rejects(t, "AbortError", lock);
  }, 'Feature-Policy header {"wake-lock" : ["*"]} allows the top-level document.');

  async_test(t => {
    test_feature_availability(
      'WakeLock.request("screen")',
      t,
      same_origin_src,
      expect_feature_available_default
    );
  }, 'Feature-Policy header {"wake-lock" : ["*"]} allows same-origin iframes.');

  async_test(t => {
    test_feature_availability(
      'WakeLock.request("screen")',
      t,
      cross_origin_src,
      expect_feature_available_default
    );
  }, 'Feature-Policy header {"wake-lock" : ["*"]} allows cross-origin iframes.');

</script>
</body>
