servo/tests/wpt/web-platform-tests/permissions-policy
2023-04-30 01:30:40 +00:00
..
experimental-features Update web-platform-tests to revision b'6aa16a6888fcf6dd3ee2eac2e911c2d7c353d193' 2023-04-25 11:40:51 +00:00
reporting Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
resources Update web-platform-tests to revision b'797e75946c24d0625f04247b16d33c26d4ada273' 2023-04-30 01:30:40 +00:00
bluetooth-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
bluetooth-allowed-by-permissions-policy-attribute.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
bluetooth-allowed-by-permissions-policy.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
bluetooth-allowed-by-permissions-policy.https.sub.html.headers Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
bluetooth-default-permissions-policy.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
bluetooth-disabled-by-permissions-policy.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
bluetooth-disabled-by-permissions-policy.https.sub.html.headers Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
idlharness.window.js Update web-platform-tests to revision b'468d01bbd84da2babf265c6af46947be68713440' 2022-01-17 16:30:29 +09:00
META.yml
payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html
payment-allowed-by-permissions-policy-attribute.https.sub.html
payment-allowed-by-permissions-policy.https.sub.html Update web-platform-tests to revision 8d1253647cfe3809ddf58a4ad7c9da5f26985d7e 2020-11-13 11:01:03 +00:00
payment-allowed-by-permissions-policy.https.sub.html.headers
payment-default-permissions-policy.https.sub.html
payment-disabled-by-permissions-policy.https.sub.html
payment-disabled-by-permissions-policy.https.sub.html.headers
payment-extension-allowed-by-permissions-policy-attribute.https.sub.html Update web-platform-tests to revision b'704eebbe6af5b43643971e96e33a0c979fba2904' 2023-01-25 01:36:16 +00:00
payment-supported-by-permissions-policy.tentative.html
permissions-policy-frame-policy-allowed-for-all.https.sub.html Update web-platform-tests to revision b'468d01bbd84da2babf265c6af46947be68713440' 2022-01-17 16:30:29 +09:00
permissions-policy-frame-policy-allowed-for-all.https.sub.html.sub.headers
permissions-policy-frame-policy-allowed-for-self.https.sub.html
permissions-policy-frame-policy-allowed-for-self.https.sub.html.sub.headers
permissions-policy-frame-policy-allowed-for-some-override.https.sub.html
permissions-policy-frame-policy-allowed-for-some-override.https.sub.html.sub.headers
permissions-policy-frame-policy-allowed-for-some.https.sub.html
permissions-policy-frame-policy-allowed-for-some.https.sub.html.sub.headers
permissions-policy-frame-policy-disallowed-for-all.https.sub.html
permissions-policy-frame-policy-disallowed-for-all.https.sub.html.sub.headers
permissions-policy-frame-policy-timing-iframe-camera.https.sub.html Update web-platform-tests to revision b'ee6da9d71d0268d7fdb04e8e5b26858f46ee0cc4' 2022-01-20 20:57:54 +09:00
permissions-policy-frame-policy-timing.https.sub.html
permissions-policy-header-policy-allowed-for-all.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
permissions-policy-header-policy-allowed-for-all.https.sub.html.sub.headers
permissions-policy-header-policy-allowed-for-malformed-wildcard.https.sub.html Update web-platform-tests to revision b'a3cb53d786edfd9106825e312866624150382075' 2023-04-23 01:36:19 +00:00
permissions-policy-header-policy-allowed-for-malformed-wildcard.https.sub.html.sub.headers Update web-platform-tests to revision b'a3cb53d786edfd9106825e312866624150382075' 2023-04-23 01:36:19 +00:00
permissions-policy-header-policy-allowed-for-self.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
permissions-policy-header-policy-allowed-for-self.https.sub.html.sub.headers
permissions-policy-header-policy-allowed-for-some.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
permissions-policy-header-policy-allowed-for-some.https.sub.html.sub.headers
permissions-policy-header-policy-allowed-for-wildcard.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
permissions-policy-header-policy-allowed-for-wildcard.https.sub.html.sub.headers Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
permissions-policy-header-policy-declined.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
permissions-policy-header-policy-declined.https.sub.html.sub.headers
permissions-policy-header-policy-disallowed-for-all.https.sub.html Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005' 2022-11-10 01:27:28 +00:00
permissions-policy-header-policy-disallowed-for-all.https.sub.html.sub.headers
permissions-policy-javascript-url-frame-policy.https.html Update web-platform-tests to revision 48e3fd2f4d41fa00640d27738bdda07db95594cc 2020-12-16 11:01:01 +00:00
permissions-policy-nested-header-policy-allowed-for-all.https.sub.html Update web-platform-tests to revision 8d1253647cfe3809ddf58a4ad7c9da5f26985d7e 2020-11-13 11:01:03 +00:00
permissions-policy-nested-header-policy-allowed-for-all.https.sub.html.sub.headers
permissions-policy-nested-header-policy-allowed-for-self.https.sub.html Update web-platform-tests to revision 8d1253647cfe3809ddf58a4ad7c9da5f26985d7e 2020-11-13 11:01:03 +00:00
permissions-policy-nested-header-policy-allowed-for-self.https.sub.html.sub.headers
permissions-policy-nested-header-policy-disallowed-for-all.https.sub.html
permissions-policy-nested-header-policy-disallowed-for-all.https.sub.html.sub.headers
permissions-policy-opaque-origin-history.https.html Update web-platform-tests to revision b'7af9d6ec48ab04043a2bea85a3599904a1a19efa' 2021-02-21 11:31:07 -05:00
permissions-policy-opaque-origin.https.html Update web-platform-tests to revision b'7af9d6ec48ab04043a2bea85a3599904a1a19efa' 2021-02-21 11:31:07 -05:00
picture-in-picture-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html
picture-in-picture-allowed-by-permissions-policy-attribute.https.sub.html
picture-in-picture-allowed-by-permissions-policy.https.sub.html
picture-in-picture-allowed-by-permissions-policy.https.sub.html.headers
picture-in-picture-default-permissions-policy.https.sub.html
picture-in-picture-disabled-by-permissions-policy.https.sub.html
picture-in-picture-disabled-by-permissions-policy.https.sub.html.headers
picture-in-picture-supported-by-permissions-policy.html
policy-extends-to-sandbox.html
private-state-token-issue-allowed-by-permissions-policy-attribute.tentative.https.sub.html Update web-platform-tests to revision b'797e75946c24d0625f04247b16d33c26d4ada273' 2023-04-30 01:30:40 +00:00
private-state-token-issue-disabled-by-permissions-policy.tentative.https.sub.html Update web-platform-tests to revision b'797e75946c24d0625f04247b16d33c26d4ada273' 2023-04-30 01:30:40 +00:00
private-state-token-issue-disabled-by-permissions-policy.tentative.https.sub.html.headers Update web-platform-tests to revision b'797e75946c24d0625f04247b16d33c26d4ada273' 2023-04-30 01:30:40 +00:00
private-state-token-issue-enabled-by-permissions-policy.tentative.https.sub.html Update web-platform-tests to revision b'797e75946c24d0625f04247b16d33c26d4ada273' 2023-04-30 01:30:40 +00:00
private-state-token-issue-enabled-by-permissions-policy.tentative.https.sub.html.headers Update web-platform-tests to revision b'797e75946c24d0625f04247b16d33c26d4ada273' 2023-04-30 01:30:40 +00:00
private-state-token-issue-supported-by-permissions-policy.tentative.html Update web-platform-tests to revision b'797e75946c24d0625f04247b16d33c26d4ada273' 2023-04-30 01:30:40 +00:00
README.md

Permissions Policy Guide

How to Test a New Feature with permissions policy

This directory contains a framework to test features with permissions policy.

When adding a new feature to permissions policy, the following cases should be tested:

  • feature enabled by header policy [HTTP tests]
    • test when feature is enabled by permissions policy HTTP header;
  • feature disabled by header policy [HTTP tests]
    • test when feature is disabled by permissions policy HTTP header;
  • feature enabled on self origin by header policy [HTTP tests]
    • test when feature is enabled only on self origin by permissions policy HTTP header.
  • feature allowed by container policy (iframe "allow" attribute);
    • test when feature is enabled by iframe "allow" attribute on self and cross origins.
  • feature allowed by container policy, redirect on load.
    • test when feature is enabled by iframe "allow" attribute when the iframe is being redirected to a new origin upon loading

How to Use the Test Framework

Use test_feature_availability() defined in /permissions-policy/resources/permissions-policy.js. Please refer to the comments in /permissions-policy/resources/permissions-policy.js for how this function works.

How to Write Header Policy Tests

HTTP tests are used to test features with header policy.

  • Define the header policy in <feature-name>-<enabled | disabled | enabled-on-self-origin>-by-permissions-policy.https.sub.html.headers. Example:

    Permissions-Policy: feature-name=*

  • In <feature-name>-<enabled | disabled | enabled-on-self-origin>-by-permissions-policy.https.sub.html:

  • test if feature is enabled / disabled in the main frame;

  • test if feature is enabled / disabled in a same-origin iframe;

  • test if feature is enabled / disabled in a cross-origin iframe.

Examples: /permissions-policy/payment-disabled-by-permissions-policy.https.sub.html /permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.headers

How to Write Container Policy Tests

Simply use test_feature_availability() with the optional argument feature_name specified to test if:

  • feature is enabled / disabled in a same-origin iframe;
  • feature is enabled / disabled in a cross-origin iframe.

Example: /permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html

How to Write Container Policy Tests with Redirect

Similar to the section above, append /permissions-policy/resources/redirect-on-load.html# to the argument src passed to test_feature_availability().

Example: /permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html