<!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 => {
    return promise_rejects(t, "NotAllowedError", WakeLock.request("screen"));
  }, 'Feature-Policy header {"wake-lock" : []} disallows the top-level document.');

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

  async_test(t => {
    test_feature_availability(
      'WakeLock.request("screen")',
      t,
      cross_origin_src,
      expect_feature_unavailable_default
    );
  }, 'Feature-Policy header {"wake-lock" : []} disallows cross-origin iframes.');
</script>
</body>
