summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/meta/permissions-policy
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/meta/permissions-policy')
-rw-r--r--testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy-attribute.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/bluetooth-default-permissions-policy.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/bluetooth-disabled-by-permissions-policy.https.sub.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/__dir__.ini1
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/focus-without-user-activation-disabled-tentative.html.ini4
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/focus-without-user-activation-enabled-tentative.sub.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-host-wildcard.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-port-wildcard.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-scheme-only.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/private-state-token-redemption-default-permissions-policy.tentative.https.sub.html.ini9
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/private-state-token-redemption-supported-by-permissions-policy.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/unload-allowed-by-default.tentative.window.js.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/unload-disallowed-subframe.tentative.window.js.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/unload-disallowed.tentative.window.js.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/vertical-scroll-disabled-scrollbar-tentative.html.ini2
-rw-r--r--testing/web-platform/meta/permissions-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/idlharness.window.js.ini101
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini8
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini11
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini6
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-extension-allowed-by-permissions-policy-attribute.https.sub.html.ini7
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-supported-by-permissions-policy.tentative.html.ini4
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-all.https.sub.html.ini236
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-self.https.sub.html.ini260
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-some-override.https.sub.html.ini97
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-some.https.sub.html.ini230
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-disallowed-for-all.https.sub.html.ini235
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-timing.https.sub.html.ini9
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-all.https.sub.html.ini23
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-malformed-wildcard.https.sub.html.ini21
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-self.https.sub.html.ini15
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-some.https.sub.html.ini30
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-wildcard.https.sub.html.ini29
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-declined.https.sub.html.ini32
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-disallowed-for-all.https.sub.html.ini17
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-javascript-url-frame-policy.https.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-allowed-for-all.https.sub.html.ini20
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-allowed-for-self.https.sub.html.ini20
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-disallowed-for-all.https.sub.html.ini20
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-opaque-origin-history.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/permissions-policy-opaque-origin.https.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini8
-rw-r--r--testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy-attribute.https.sub.html.ini8
-rw-r--r--testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy.https.sub.html.ini11
-rw-r--r--testing/web-platform/meta/permissions-policy/picture-in-picture-default-permissions-policy.https.sub.html.ini11
-rw-r--r--testing/web-platform/meta/permissions-policy/picture-in-picture-disabled-by-permissions-policy.https.sub.html.ini11
-rw-r--r--testing/web-platform/meta/permissions-policy/picture-in-picture-supported-by-permissions-policy.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/policy-extends-to-sandbox.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/private-state-token-issue-allowed-by-permissions-policy-attribute.tentative.https.sub.html.ini6
-rw-r--r--testing/web-platform/meta/permissions-policy/private-state-token-issue-disabled-by-permissions-policy.tentative.https.sub.html.ini15
-rw-r--r--testing/web-platform/meta/permissions-policy/private-state-token-issue-enabled-by-permissions-policy.tentative.https.sub.html.ini12
-rw-r--r--testing/web-platform/meta/permissions-policy/private-state-token-issue-supported-by-permissions-policy.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/__dir__.ini1
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/bluetooth-report-only.https.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/bluetooth-reporting.https.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/camera-report-only.https.html.ini6
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/camera-reporting.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/encrypted-media-report-only.https.html.ini9
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/encrypted-media-reporting.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/fullscreen-report-only.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/fullscreen-reporting.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/generic-sensor-report-only.https.html.ini4
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/generic-sensor-reporting.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/geolocation-report-only.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/geolocation-reporting.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/microphone-report-only.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/microphone-reporting.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/midi-report-only.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/midi-reporting.https.html.ini8
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/payment-report-only.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/payment-reporting.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/picture-in-picture-report-only.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/picture-in-picture-reporting.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/report-only-and-enforce.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/report-only-single-endpoint.https.sub.html.ini4
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/report-to-multiple-endpoints.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/report-to-single-endpoint.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/screen-wake-lock-reporting.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/serial-report-only.https.html.ini8
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/serial-reporting.https.html.ini8
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/sync-xhr-report-only.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/sync-xhr-reporting.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/usb-report-only.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/usb-reporting.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/xr-report-only.https.html.ini5
-rw-r--r--testing/web-platform/meta/permissions-policy/reporting/xr-reporting.https.html.ini4
90 files changed, 1780 insertions, 0 deletions
diff --git a/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini
new file mode 100644
index 0000000000..da27414e50
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini
@@ -0,0 +1,3 @@
+[bluetooth-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html]
+ [bluetooth-allowed-by-permissions-policy-attribute-redirect-on-load]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy-attribute.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy-attribute.https.sub.html.ini
new file mode 100644
index 0000000000..3b23887fd4
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy-attribute.https.sub.html.ini
@@ -0,0 +1,3 @@
+[bluetooth-allowed-by-permissions-policy-attribute.https.sub.html]
+ [bluetooth-allowed-by-permissions-policy-attribute]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..d22a9b1ff4
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/bluetooth-allowed-by-permissions-policy.https.sub.html.ini
@@ -0,0 +1,3 @@
+[bluetooth-allowed-by-permissions-policy.https.sub.html]
+ [bluetooth-allowed-by-permissions-policy]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/bluetooth-default-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/bluetooth-default-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..964d75f3d6
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/bluetooth-default-permissions-policy.https.sub.html.ini
@@ -0,0 +1,3 @@
+[bluetooth-default-permissions-policy.https.sub.html]
+ [bluetooth-default-permissions-policy]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/bluetooth-disabled-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/bluetooth-disabled-by-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..3a6c403546
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/bluetooth-disabled-by-permissions-policy.https.sub.html.ini
@@ -0,0 +1,5 @@
+[bluetooth-disabled-by-permissions-policy.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [bluetooth-disabled-by-permissions-policy]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/__dir__.ini b/testing/web-platform/meta/permissions-policy/experimental-features/__dir__.ini
new file mode 100644
index 0000000000..cf595441dd
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/__dir__.ini
@@ -0,0 +1 @@
+prefs: [dom.reporting.enabled:true]
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/focus-without-user-activation-disabled-tentative.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/focus-without-user-activation-disabled-tentative.html.ini
new file mode 100644
index 0000000000..844eb6f30b
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/focus-without-user-activation-disabled-tentative.html.ini
@@ -0,0 +1,4 @@
+[focus-without-user-activation-disabled-tentative.html]
+ [When the policy is disabled, 'autofocus' and scripted focus do not focus the document.]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/focus-without-user-activation-enabled-tentative.sub.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/focus-without-user-activation-enabled-tentative.sub.html.ini
new file mode 100644
index 0000000000..61cfadad66
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/focus-without-user-activation-enabled-tentative.sub.html.ini
@@ -0,0 +1,5 @@
+[focus-without-user-activation-enabled-tentative.sub.html]
+ expected: TIMEOUT
+ [When the policy is enabled, 'autofocus' and scripted focus do focus the document.]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-host-wildcard.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-host-wildcard.https.sub.html.ini
new file mode 100644
index 0000000000..a4ac4be965
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-host-wildcard.https.sub.html.ini
@@ -0,0 +1,3 @@
+[permissions-policy-header-host-wildcard.https.sub.html]
+ [Test wildcard host policy works as expected]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-port-wildcard.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-port-wildcard.https.sub.html.ini
new file mode 100644
index 0000000000..a4fd27d1e9
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-port-wildcard.https.sub.html.ini
@@ -0,0 +1,3 @@
+[permissions-policy-header-port-wildcard.https.sub.html]
+ [Test wildcard port policy works as expected]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-scheme-only.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-scheme-only.https.sub.html.ini
new file mode 100644
index 0000000000..bc29f82d25
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/permissions-policy-header-scheme-only.https.sub.html.ini
@@ -0,0 +1,3 @@
+[permissions-policy-header-scheme-only.https.sub.html]
+ [Test scheme only policy works as expected]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/private-state-token-redemption-default-permissions-policy.tentative.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/private-state-token-redemption-default-permissions-policy.tentative.https.sub.html.ini
new file mode 100644
index 0000000000..7618c55511
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/private-state-token-redemption-default-permissions-policy.tentative.https.sub.html.ini
@@ -0,0 +1,9 @@
+[private-state-token-redemption-default-permissions-policy.tentative.https.sub.html]
+ [Default "private-state-token-redemption" permissions policy ["self"\] allows the top-level document.]
+ expected: FAIL
+
+ [Default "private-state-token-redemption" permissions policy ["self"\] allows same-origin iframes.]
+ expected: FAIL
+
+ [Default "private-state-token-redemption" permissions policy ["self"\] disallows cross-origin iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/private-state-token-redemption-supported-by-permissions-policy.tentative.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/private-state-token-redemption-supported-by-permissions-policy.tentative.html.ini
new file mode 100644
index 0000000000..5e44491d4d
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/private-state-token-redemption-supported-by-permissions-policy.tentative.html.ini
@@ -0,0 +1,3 @@
+[private-state-token-redemption-supported-by-permissions-policy.tentative.html]
+ [document.featurePolicy.features should advertise private-state-token-redemption.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/unload-allowed-by-default.tentative.window.js.ini b/testing/web-platform/meta/permissions-policy/experimental-features/unload-allowed-by-default.tentative.window.js.ini
new file mode 100644
index 0000000000..650434bc5f
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/unload-allowed-by-default.tentative.window.js.ini
@@ -0,0 +1,3 @@
+[unload-allowed-by-default.tentative.window.html]
+ ['unload' Policy : allowed by default]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/unload-disallowed-subframe.tentative.window.js.ini b/testing/web-platform/meta/permissions-policy/experimental-features/unload-disallowed-subframe.tentative.window.js.ini
new file mode 100644
index 0000000000..0552bff074
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/unload-disallowed-subframe.tentative.window.js.ini
@@ -0,0 +1,5 @@
+[unload-disallowed-subframe.tentative.window.html]
+ expected:
+ if (os == "android") and fission: [OK, ERROR, TIMEOUT]
+ ['unload' Policy : allowed in main frame but disallowed in subframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/unload-disallowed.tentative.window.js.ini b/testing/web-platform/meta/permissions-policy/experimental-features/unload-disallowed.tentative.window.js.ini
new file mode 100644
index 0000000000..8b38f1f3db
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/unload-disallowed.tentative.window.js.ini
@@ -0,0 +1,5 @@
+[unload-disallowed.tentative.window.html]
+ expected:
+ if (os == "android") and fission: [TIMEOUT, OK]
+ ['unload' Policy : disallowed when header is ()]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/vertical-scroll-disabled-scrollbar-tentative.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/vertical-scroll-disabled-scrollbar-tentative.html.ini
new file mode 100644
index 0000000000..fdfbde29ea
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/vertical-scroll-disabled-scrollbar-tentative.html.ini
@@ -0,0 +1,2 @@
+[vertical-scroll-disabled-scrollbar-tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html.ini b/testing/web-platform/meta/permissions-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html.ini
new file mode 100644
index 0000000000..5c7cef8a8f
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html.ini
@@ -0,0 +1,5 @@
+[vertical-scroll-scrollintoview.tentative.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Calling 'scrollIntoView()' inside a <iframe> with 'vertical-scroll none;'will not propagate upwards.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/idlharness.window.js.ini b/testing/web-platform/meta/permissions-policy/idlharness.window.js.ini
new file mode 100644
index 0000000000..53852b079f
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/idlharness.window.js.ini
@@ -0,0 +1,101 @@
+[idlharness.window.html]
+ expected:
+ if (os == "android") and fission: [TIMEOUT, OK]
+ [PermissionsPolicyViolationReportBody interface: attribute sourceFile]
+ expected: FAIL
+
+ [PermissionsPolicy must be primary interface of document.permissionsPolicy]
+ expected: FAIL
+
+ [PermissionsPolicy interface object name]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface: attribute disposition]
+ expected: FAIL
+
+ [Document interface: document must inherit property "permissionsPolicy" with the proper type]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface: existence and properties of interface prototype object's "constructor" property]
+ expected: FAIL
+
+ [PermissionsPolicy interface: operation allowedFeatures()]
+ expected: FAIL
+
+ [PermissionsPolicy interface: document.permissionsPolicy must inherit property "getAllowlistForFeature(DOMString)" with the proper type]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface: attribute lineNumber]
+ expected: FAIL
+
+ [PermissionsPolicy interface: operation features()]
+ expected: FAIL
+
+ [PermissionsPolicy interface: operation allowsFeature(DOMString, optional DOMString)]
+ expected: FAIL
+
+ [PermissionsPolicy interface: document.permissionsPolicy must inherit property "allowsFeature(DOMString, optional DOMString)" with the proper type]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface object length]
+ expected: FAIL
+
+ [PermissionsPolicy interface: existence and properties of interface object]
+ expected: FAIL
+
+ [PermissionsPolicy interface: operation getAllowlistForFeature(DOMString)]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface: existence and properties of interface prototype object's @@unscopables property]
+ expected: FAIL
+
+ [PermissionsPolicy interface: calling getAllowlistForFeature(DOMString) on document.permissionsPolicy with too few arguments must throw TypeError]
+ expected: FAIL
+
+ [PermissionsPolicy interface: existence and properties of interface prototype object's "constructor" property]
+ expected: FAIL
+
+ [PermissionsPolicy interface: document.permissionsPolicy must inherit property "allowedFeatures()" with the proper type]
+ expected: FAIL
+
+ [PermissionsPolicy interface: existence and properties of interface prototype object's @@unscopables property]
+ expected: FAIL
+
+ [PermissionsPolicy interface: existence and properties of interface prototype object]
+ expected: FAIL
+
+ [PermissionsPolicy interface object length]
+ expected: FAIL
+
+ [PermissionsPolicy interface: calling allowsFeature(DOMString, optional DOMString) on document.permissionsPolicy with too few arguments must throw TypeError]
+ expected: FAIL
+
+ [HTMLIFrameElement interface: attribute permissionsPolicy]
+ expected: FAIL
+
+ [PermissionsPolicy interface: document.permissionsPolicy must inherit property "features()" with the proper type]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface: attribute columnNumber]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface: existence and properties of interface object]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface object name]
+ expected: FAIL
+
+ [Stringification of document.permissionsPolicy]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface: attribute featureId]
+ expected: FAIL
+
+ [PermissionsPolicyViolationReportBody interface: existence and properties of interface prototype object]
+ expected: FAIL
+
+ [Document interface: attribute permissionsPolicy]
+ expected: FAIL
+
+ [HTMLIFrameElement interface: document.createElement("iframe") must inherit property "permissionsPolicy" with the proper type]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini
new file mode 100644
index 0000000000..d0bbe8bfb3
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini
@@ -0,0 +1,3 @@
+[payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html]
+ [permissions policy allow="payment" allows same-origin navigation in an iframe.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini
new file mode 100644
index 0000000000..4bf9baa39f
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini
@@ -0,0 +1,8 @@
+[payment-allowed-by-permissions-policy-attribute.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [permissions policy "payment" can be enabled in cross-origin iframe using allow="payment" attribute]
+ expected: FAIL
+
+ [permissions policy "payment" can be enabled in same-origin iframe using allow="payment" attribute]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..089b6cdfa3
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini
@@ -0,0 +1,11 @@
+[payment-allowed-by-permissions-policy.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [permissions policy header "payment=*" allows same-origin iframes.]
+ expected: FAIL
+
+ [permissions policy header "payment=*" allows the top-level document.]
+ expected: FAIL
+
+ [permissions policy header "payment=*" allow="payment" allows cross-origin iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..6a8f47cb65
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini
@@ -0,0 +1,6 @@
+[payment-default-permissions-policy.https.sub.html]
+ [Default "payment" permissions policy allows the top-level document.]
+ expected: FAIL
+
+ [Default "payment" permissions policy allows same-origin iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..baacbea72e
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini
@@ -0,0 +1,5 @@
+[payment-disabled-by-permissions-policy.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [permissions policy header "payment=()" disallows the top-level document.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-extension-allowed-by-permissions-policy-attribute.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-extension-allowed-by-permissions-policy-attribute.https.sub.html.ini
new file mode 100644
index 0000000000..037411027b
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/payment-extension-allowed-by-permissions-policy-attribute.https.sub.html.ini
@@ -0,0 +1,7 @@
+[payment-extension-allowed-by-permissions-policy-attribute.https.sub.html]
+ expected: TIMEOUT
+ [permissions policy "payment" is not supported in cross-origin iframe without allow="payment" attribute]
+ expected: TIMEOUT
+
+ [permissions policy "payment" can be enabled in cross-origin iframe using allow="payment" attribute]
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/permissions-policy/payment-supported-by-permissions-policy.tentative.html.ini b/testing/web-platform/meta/permissions-policy/payment-supported-by-permissions-policy.tentative.html.ini
new file mode 100644
index 0000000000..6c69f75116
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/payment-supported-by-permissions-policy.tentative.html.ini
@@ -0,0 +1,4 @@
+[payment-supported-by-permissions-policy.tentative.html]
+ [document.featurePolicy.features should advertise payment.]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-all.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-all.https.sub.html.ini
new file mode 100644
index 0000000000..3aaeb91da5
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-all.https.sub.html.ini
@@ -0,0 +1,236 @@
+[permissions-policy-frame-policy-allowed-for-all.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc+ same origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc+ cross origin iframe inherit from header policy.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-self.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-self.https.sub.html.ini
new file mode 100644
index 0000000000..168a3bb520
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-self.https.sub.html.ini
@@ -0,0 +1,260 @@
+[permissions-policy-frame-policy-allowed-for-self.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on data: URL origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on data: URL origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on data: URL origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on data: URL origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on data: URL origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin sandboxed iframe with allow="fullscreen".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on data: URL origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on sandboxed iframe with no allow attribute.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on sandboxed srcdoc iframe with allow="fullscreen https://www.web-platform.test:8443".]
+ expected: FAIL
+
+ [Test frame policy on sandboxed iframe with allow="fullscreen".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on sandboxed iframe with allow="fullscreen 'src'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on sandboxed iframe with allow="fullscreen https://www.web-platform.test:8443".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc sandboxed iframe with allow="fullscreen".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin sandboxed iframe with allow="fullscreen".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on data: URL origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on data: URL origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-some-override.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-some-override.https.sub.html.ini
new file mode 100644
index 0000000000..86702136f8
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-some-override.https.sub.html.ini
@@ -0,0 +1,97 @@
+[permissions-policy-frame-policy-allowed-for-some-override.https.sub.html]
+ [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-some.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-some.https.sub.html.ini
new file mode 100644
index 0000000000..08915a24b4
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-allowed-for-some.https.sub.html.ini
@@ -0,0 +1,230 @@
+[permissions-policy-frame-policy-allowed-for-some.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Test frame policy on another cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + another cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on another cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'".]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-disallowed-for-all.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-disallowed-for-all.https.sub.html.ini
new file mode 100644
index 0000000000..bb2a2465af
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-disallowed-for-all.https.sub.html.ini
@@ -0,0 +1,235 @@
+[permissions-policy-frame-policy-disallowed-for-all.https.sub.html]
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "*" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=self;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'none'".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'none'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=();".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe with allow = "*" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + cross origin iframe inherit from header policy.]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.]
+ expected: FAIL
+
+ [Test frame policy on srcdoc + same origin iframe with allow = "'self'".]
+ expected: FAIL
+
+ [Test frame policy on data: URL cross origin iframe with allow = "*".]
+ expected: FAIL
+
+ [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Permissions-Policy: fullscreen=*;".]
+ expected: FAIL
+
+ [Test frame policy on cross origin iframe with allow = "'self'".]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-timing.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-timing.https.sub.html.ini
new file mode 100644
index 0000000000..1a9dd1f950
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-frame-policy-timing.https.sub.html.ini
@@ -0,0 +1,9 @@
+[permissions-policy-frame-policy-timing.https.sub.html]
+ expected:
+ if (os == "linux") and not debug and fission: [OK, ERROR]
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [allow attr timing test diff origin]
+ expected: FAIL
+
+ [allow attr timing test same origin]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-all.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-all.https.sub.html.ini
new file mode 100644
index 0000000000..9a50cff6e7
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-all.https.sub.html.ini
@@ -0,0 +1,23 @@
+[permissions-policy-header-policy-allowed-for-all.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Permissions-Policy: fullscreen=*, iframe.allow = fullscreen 'self'; -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=*, iframe.allow = fullscreen 'self'; -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=*NaN]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=* -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=* -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=*, iframe.allow = fullscreen 'src'; -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=*, iframe.allow = fullscreen 'src'; -- test fullscreen is allowed on cross-origin subframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-malformed-wildcard.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-malformed-wildcard.https.sub.html.ini
new file mode 100644
index 0000000000..65f2e90ce6
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-malformed-wildcard.https.sub.html.ini
@@ -0,0 +1,21 @@
+[permissions-policy-header-policy-allowed-for-malformed-wildcard.https.sub.html]
+ [Permissions-Policy: fullscreen=("$MALFORMED_WILDCARD_ORIGINS self") -- test allowlist lists all the malformed wildcards and self.]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("$MALFORMED_WILDCARD_ORIGINS self") -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("$MALFORMED_WILDCARD_ORIGINS self") -- test fullscreen is allowed on same-origin subframe with allow attribute]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("$MALFORMED_WILDCARD_ORIGINS self") -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("$MALFORMED_WILDCARD_ORIGINS self") -- test fullscreen is disallowed on cross-origin subframe allow attribute]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("$MALFORMED_WILDCARD_ORIGINS self") -- test fullscreen is disallowed on another cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("$MALFORMED_WILDCARD_ORIGINS self") -- test fullscreen is disallowed on another cross-origin subframe allow attribute]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-self.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-self.https.sub.html.ini
new file mode 100644
index 0000000000..2eea10b053
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-self.https.sub.html.ini
@@ -0,0 +1,15 @@
+[permissions-policy-header-policy-allowed-for-self.https.sub.html]
+ [Permissions-Policy: fullscreen=self, iframe.allow = fullscreen 'src'; -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=self -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=self -- test allowlist is [same_origin\]]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=self -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=self, iframe.allow = fullscreen 'src'; -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-some.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-some.https.sub.html.ini
new file mode 100644
index 0000000000..9899e0b166
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-some.https.sub.html.ini
@@ -0,0 +1,30 @@
+[permissions-policy-header-policy-allowed-for-some.https.sub.html]
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com") -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com")iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com") -- test fullscreen is disallowed on cross-origin https://www1.web-platform.test:8443/permissions-policy/resources/permissions-policy-allowedfeatures.html subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com"), iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com") -- test allowlist is [same_origin, cross_origin, https://www.example.com\]]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com") -- test fullscreen is disallowed on cross-origin https://www.web-platform.test:8443/permissions-policy/resources/permissions-policy-allowedfeatures.html subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com")iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on another cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com"), iframe.allow = fullscreen 'src'; -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com")iframe.allow = fullscreen 'src'; -- test fullscreen is allowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com"), iframe.allow = fullscreen 'src'; -- test fullscreen is disallowed on another cross-origin subframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-wildcard.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-wildcard.https.sub.html.ini
new file mode 100644
index 0000000000..a127723154
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-allowed-for-wildcard.https.sub.html.ini
@@ -0,0 +1,29 @@
+[permissions-policy-header-policy-allowed-for-wildcard.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test allowlist is [self wildcard_origin\].]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test fullscreen is allowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test fullscreen is allowed on same-origin subframe even with allow attribute]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test fullscreen is allowed on cross-origin subframe allow attribute]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test fullscreen is disallowed on another cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test fullscreen is allowed on another cross-origin subframe allow attribute]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test fullscreen is disallowed on cross-origin subframe with wildcard allow attribute]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=("https://*.web-platform.test:8443") -- test fullscreen is disallowed on another cross-origin subframe with wildcard allow attribute]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-declined.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-declined.https.sub.html.ini
new file mode 100644
index 0000000000..50c59b51f8
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-declined.https.sub.html.ini
@@ -0,0 +1,32 @@
+[permissions-policy-header-policy-declined.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com" -- test allowlist is [cross_origin, https://www.example.com\]]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com" -- test fullscreen is disallowed on cross-origin https://www1.web-platform.test:8443/permissions-policy/resources/permissions-policy-allowedfeatures.html subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com", iframe.allow = fullscreen https://www.web-platform.test:8443 -- test fullscreen is disallowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com", iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com" -- test fullscreen is disallowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com" -- test fullscreen is disallowed on cross-origin https://www.web-platform.test:8443/permissions-policy/resources/permissions-policy-allowedfeatures.html subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com"iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on specific cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com"iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on another cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com"iframe.allow = fullscreen https://www.web-platform.test:8443 -- test fullscreen is disallowed on specific cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(self "https://www.web-platform.test:8443" "https://www.example.com"iframe.allow = fullscreen https://www.web-platform.test:8443 -- test fullscreen is disallowed on another cross-origin subframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-disallowed-for-all.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-disallowed-for-all.https.sub.html.ini
new file mode 100644
index 0000000000..bdbc9069b8
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-header-policy-disallowed-for-all.https.sub.html.ini
@@ -0,0 +1,17 @@
+[permissions-policy-header-policy-disallowed-for-all.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Permissions-Policy: fullscreen=(), iframe.allow = fullscreen 'src'; -- test fullscreen is disallowed on same-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=(), iframe.allow = fullscreen 'src'; -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=() -- test allowlist is [\]]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=() -- test fullscreen is disallowed on cross-origin subframe]
+ expected: FAIL
+
+ [Permissions-Policy: fullscreen=() -- test fullscreen is disallowed on same-origin subframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-javascript-url-frame-policy.https.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-javascript-url-frame-policy.https.html.ini
new file mode 100644
index 0000000000..22259914a2
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-javascript-url-frame-policy.https.html.ini
@@ -0,0 +1,3 @@
+[permissions-policy-javascript-url-frame-policy.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-allowed-for-all.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-allowed-for-all.https.sub.html.ini
new file mode 100644
index 0000000000..643c173761
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-allowed-for-all.https.sub.html.ini
@@ -0,0 +1,20 @@
+[permissions-policy-nested-header-policy-allowed-for-all.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Test nested header policy with remote iframe on policy "fullscreen=*"]
+ expected: FAIL
+
+ [Test nested header policy with remote iframe on policy "fullscreen=self"]
+ expected: FAIL
+
+ [Test nested header policy with remote iframe on policy "fullscreen=()"]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=()"]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=self]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=*"]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-allowed-for-self.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-allowed-for-self.https.sub.html.ini
new file mode 100644
index 0000000000..2da7d702ca
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-allowed-for-self.https.sub.html.ini
@@ -0,0 +1,20 @@
+[permissions-policy-nested-header-policy-allowed-for-self.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Test nested header policy with remote iframe on policy "fullscreen=*"]
+ expected: FAIL
+
+ [Test nested header policy with remote iframe on policy "fullscreen=self"]
+ expected: FAIL
+
+ [Test nested header policy with remote iframe on policy "fullscreen=()"]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=()"]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=*"]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=self"]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-disallowed-for-all.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-disallowed-for-all.https.sub.html.ini
new file mode 100644
index 0000000000..8584b87d94
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-nested-header-policy-disallowed-for-all.https.sub.html.ini
@@ -0,0 +1,20 @@
+[permissions-policy-nested-header-policy-disallowed-for-all.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Test nested header policy with remote iframe on policy "fullscreen=self".]
+ expected: FAIL
+
+ [Test nested header policy with remote iframe on policy "fullscreen=\\(\\)".]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=\\(\\)".]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=self".]
+ expected: FAIL
+
+ [Test nested header policy with local iframe on policy "fullscreen=*".]
+ expected: FAIL
+
+ [Test nested header policy with remote iframe on policy "fullscreen=*".]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-opaque-origin-history.https.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-opaque-origin-history.https.html.ini
new file mode 100644
index 0000000000..c6e32efb4a
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-opaque-origin-history.https.html.ini
@@ -0,0 +1,5 @@
+[permissions-policy-opaque-origin-history.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [permissions-policy-opaque-origin-history]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/permissions-policy-opaque-origin.https.html.ini b/testing/web-platform/meta/permissions-policy/permissions-policy-opaque-origin.https.html.ini
new file mode 100644
index 0000000000..1286753a8e
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/permissions-policy-opaque-origin.https.html.ini
@@ -0,0 +1,3 @@
+[permissions-policy-opaque-origin.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini
new file mode 100644
index 0000000000..546c5251e7
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html.ini
@@ -0,0 +1,8 @@
+[picture-in-picture-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [permissions policy allow="picture-in-picture" disallows cross-origin navigation in an iframe.]
+ expected: FAIL
+
+ [permissions policy allow="picture-in-picture" allows same-origin navigation in an iframe.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy-attribute.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy-attribute.https.sub.html.ini
new file mode 100644
index 0000000000..5196050e4b
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy-attribute.https.sub.html.ini
@@ -0,0 +1,8 @@
+[picture-in-picture-allowed-by-permissions-policy-attribute.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [permissions policy "picture-in-picture" can be enabled in same-origin iframe using allow="picture-in-picture" attribute]
+ expected: FAIL
+
+ [permissions policy "picture-in-picture" can be enabled in cross-origin iframe using allow="picture-in-picture" attribute]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..8fa7a57dbc
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/picture-in-picture-allowed-by-permissions-policy.https.sub.html.ini
@@ -0,0 +1,11 @@
+[picture-in-picture-allowed-by-permissions-policy.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [permissions policy header: picture-in-picture * allows the top-level document.]
+ expected: FAIL
+
+ [permissions policy header: picture-in-picture * allows cross-origin iframes.]
+ expected: FAIL
+
+ [permissions policy header: picture-in-picture * allows same-origin iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/picture-in-picture-default-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/picture-in-picture-default-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..0870ef538e
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/picture-in-picture-default-permissions-policy.https.sub.html.ini
@@ -0,0 +1,11 @@
+[picture-in-picture-default-permissions-policy.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Default "picture-in-picture" permissions policy [*\] allows the top-level document.]
+ expected: FAIL
+
+ [Default "picture-in-picture" permissions policy [*\] allows cross-origin iframes.]
+ expected: FAIL
+
+ [Default "picture-in-picture" permissions policy [*\] allows same-origin iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/picture-in-picture-disabled-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/picture-in-picture-disabled-by-permissions-policy.https.sub.html.ini
new file mode 100644
index 0000000000..d60f5029a0
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/picture-in-picture-disabled-by-permissions-policy.https.sub.html.ini
@@ -0,0 +1,11 @@
+[picture-in-picture-disabled-by-permissions-policy.https.sub.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [permissions policy header: picture-in-picture "none" disallows the top-level document.]
+ expected: FAIL
+
+ [permissions policy header: picture-in-picture "none" disallows cross-origin iframes.]
+ expected: FAIL
+
+ [permissions policy header: picture-in-picture "none" disallows same-origin iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/picture-in-picture-supported-by-permissions-policy.html.ini b/testing/web-platform/meta/permissions-policy/picture-in-picture-supported-by-permissions-policy.html.ini
new file mode 100644
index 0000000000..70e5ef162c
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/picture-in-picture-supported-by-permissions-policy.html.ini
@@ -0,0 +1,5 @@
+[picture-in-picture-supported-by-permissions-policy.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [document.featurePolicy.features should advertise picture-in-picture.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/policy-extends-to-sandbox.html.ini b/testing/web-platform/meta/permissions-policy/policy-extends-to-sandbox.html.ini
new file mode 100644
index 0000000000..a8539d0ba9
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/policy-extends-to-sandbox.html.ini
@@ -0,0 +1,5 @@
+[policy-extends-to-sandbox.html]
+ expected: TIMEOUT
+ [permissions policy treats opaque origins correctly]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/private-state-token-issue-allowed-by-permissions-policy-attribute.tentative.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/private-state-token-issue-allowed-by-permissions-policy-attribute.tentative.https.sub.html.ini
new file mode 100644
index 0000000000..d9180c7d34
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/private-state-token-issue-allowed-by-permissions-policy-attribute.tentative.https.sub.html.ini
@@ -0,0 +1,6 @@
+[private-state-token-issue-allowed-by-permissions-policy-attribute.tentative.https.sub.html]
+ [Permissions policy "private-state-token-issuance" can be enabled in same-origin iframe using allow="private-state-token-issuance" attribute]
+ expected: FAIL
+
+ [Permissions policy "private-state-token-issuance" can be enabled in cross-origin iframe using allow="private-state-token-issuance" attribute]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/private-state-token-issue-disabled-by-permissions-policy.tentative.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/private-state-token-issue-disabled-by-permissions-policy.tentative.https.sub.html.ini
new file mode 100644
index 0000000000..808b22f29a
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/private-state-token-issue-disabled-by-permissions-policy.tentative.https.sub.html.ini
@@ -0,0 +1,15 @@
+[private-state-token-issue-disabled-by-permissions-policy.tentative.https.sub.html]
+ [Permissions policy header "private-state-token-issuance=()" disallows the top-level document.]
+ expected: FAIL
+
+ [Permissions policy header "private-state-token-issuance=()" disallows same-origin iframes.]
+ expected: FAIL
+
+ [Permissions policy header "private-state-token-issuance=()" disallows cross-origin iframes.]
+ expected: FAIL
+
+ [Permissions policy header "private-state-token-issuance=()" and allow="private-state-token-issuance" disallows same-origin iframes.]
+ expected: FAIL
+
+ [Permissions policy header "private-state-token-issuance=()" and allow="private-state-token-issuance" disallows cross-origin iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/private-state-token-issue-enabled-by-permissions-policy.tentative.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/private-state-token-issue-enabled-by-permissions-policy.tentative.https.sub.html.ini
new file mode 100644
index 0000000000..29fc9a1823
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/private-state-token-issue-enabled-by-permissions-policy.tentative.https.sub.html.ini
@@ -0,0 +1,12 @@
+[private-state-token-issue-enabled-by-permissions-policy.tentative.https.sub.html]
+ [Permissions policy header "private-state-token-issuance=*" allows the top-level document.]
+ expected: FAIL
+
+ [Permissions policy header "private-state-token-issuance=*" allows same-origin iframes.]
+ expected: FAIL
+
+ [Permissions policy header "private-state-token-issuance=*" disallows cross-origin iframes.]
+ expected: FAIL
+
+ [Permissions policy header "private-state-token-issuance=*" and allow="private-state-token-issuance" allows cross-origin iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/private-state-token-issue-supported-by-permissions-policy.tentative.html.ini b/testing/web-platform/meta/permissions-policy/private-state-token-issue-supported-by-permissions-policy.tentative.html.ini
new file mode 100644
index 0000000000..2071231134
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/private-state-token-issue-supported-by-permissions-policy.tentative.html.ini
@@ -0,0 +1,3 @@
+[private-state-token-issue-supported-by-permissions-policy.tentative.html]
+ [document.featurePolicy.features should advertise private-state-token-issuance.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/__dir__.ini b/testing/web-platform/meta/permissions-policy/reporting/__dir__.ini
new file mode 100644
index 0000000000..cf595441dd
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/__dir__.ini
@@ -0,0 +1 @@
+prefs: [dom.reporting.enabled:true]
diff --git a/testing/web-platform/meta/permissions-policy/reporting/bluetooth-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/bluetooth-report-only.https.html.ini
new file mode 100644
index 0000000000..1384fcbeb0
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/bluetooth-report-only.https.html.ini
@@ -0,0 +1,3 @@
+[bluetooth-report-only.https.html]
+ [bluetooth-report-only]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/bluetooth-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/bluetooth-reporting.https.html.ini
new file mode 100644
index 0000000000..c599c50a17
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/bluetooth-reporting.https.html.ini
@@ -0,0 +1,3 @@
+[bluetooth-reporting.https.html]
+ [bluetooth-reporting]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/camera-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/camera-report-only.https.html.ini
new file mode 100644
index 0000000000..489bc3626e
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/camera-report-only.https.html.ini
@@ -0,0 +1,6 @@
+[camera-report-only.https.html]
+ expected:
+ if swgl and (os == "android"): [TIMEOUT, ERROR]
+ TIMEOUT
+ [Camera report only mode]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/permissions-policy/reporting/camera-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/camera-reporting.https.html.ini
new file mode 100644
index 0000000000..5d1658332d
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/camera-reporting.https.html.ini
@@ -0,0 +1,5 @@
+[camera-reporting.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Camera Report Format]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/encrypted-media-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/encrypted-media-report-only.https.html.ini
new file mode 100644
index 0000000000..2b91e72574
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/encrypted-media-report-only.https.html.ini
@@ -0,0 +1,9 @@
+[encrypted-media-report-only.https.html]
+ expected:
+ if os == "android": OK
+ TIMEOUT
+ [Encrypted Media report only mode]
+ expected:
+ if os == "android": FAIL
+ TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/encrypted-media-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/encrypted-media-reporting.https.html.ini
new file mode 100644
index 0000000000..41037832b6
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/encrypted-media-reporting.https.html.ini
@@ -0,0 +1,5 @@
+[encrypted-media-reporting.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Encrypted Media report format]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/fullscreen-report-only.html.ini b/testing/web-platform/meta/permissions-policy/reporting/fullscreen-report-only.html.ini
new file mode 100644
index 0000000000..eae844c5d6
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/fullscreen-report-only.html.ini
@@ -0,0 +1,5 @@
+[fullscreen-report-only.html]
+ expected: TIMEOUT
+ [Fullscreen report only mode]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/fullscreen-reporting.html.ini b/testing/web-platform/meta/permissions-policy/reporting/fullscreen-reporting.html.ini
new file mode 100644
index 0000000000..6e16f477ad
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/fullscreen-reporting.html.ini
@@ -0,0 +1,5 @@
+[fullscreen-reporting.html]
+ expected: TIMEOUT
+ [Fullscreen Report Format]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/generic-sensor-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/generic-sensor-report-only.https.html.ini
new file mode 100644
index 0000000000..0398bd38db
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/generic-sensor-report-only.https.html.ini
@@ -0,0 +1,4 @@
+[generic-sensor-report-only.https.html]
+ [Generic Sensor report only mode]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/generic-sensor-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/generic-sensor-reporting.https.html.ini
new file mode 100644
index 0000000000..4d920924ad
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/generic-sensor-reporting.https.html.ini
@@ -0,0 +1,5 @@
+[generic-sensor-reporting.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Generic Sensor Report Format]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/geolocation-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/geolocation-report-only.https.html.ini
new file mode 100644
index 0000000000..63417673a0
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/geolocation-report-only.https.html.ini
@@ -0,0 +1,5 @@
+[geolocation-report-only.https.html]
+ expected: TIMEOUT
+ [Geolocation report only mode]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/geolocation-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/geolocation-reporting.https.html.ini
new file mode 100644
index 0000000000..e090c13522
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/geolocation-reporting.https.html.ini
@@ -0,0 +1,5 @@
+[geolocation-reporting.https.html]
+ expected: TIMEOUT
+ [Geolocation Report Format]
+ expected: NOTRUN
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/microphone-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/microphone-report-only.https.html.ini
new file mode 100644
index 0000000000..310d0701e6
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/microphone-report-only.https.html.ini
@@ -0,0 +1,5 @@
+[microphone-report-only.https.html]
+ expected: TIMEOUT
+ [Microphone report only mode]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/microphone-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/microphone-reporting.https.html.ini
new file mode 100644
index 0000000000..76f05378a3
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/microphone-reporting.https.html.ini
@@ -0,0 +1,5 @@
+[microphone-reporting.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Microphone Report Format]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/midi-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/midi-report-only.https.html.ini
new file mode 100644
index 0000000000..b26c07d171
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/midi-report-only.https.html.ini
@@ -0,0 +1,5 @@
+[midi-report-only.https.html]
+ expected: TIMEOUT
+ [MIDI report only mode]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/midi-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/midi-reporting.https.html.ini
new file mode 100644
index 0000000000..c7f28adb56
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/midi-reporting.https.html.ini
@@ -0,0 +1,8 @@
+[midi-reporting.https.html]
+ expected:
+ if os == "android": OK
+ TIMEOUT
+ [MIDI Report Format]
+ expected:
+ if os == "android": FAIL
+ TIMEOUT
diff --git a/testing/web-platform/meta/permissions-policy/reporting/payment-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/payment-report-only.https.html.ini
new file mode 100644
index 0000000000..09e0161e55
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/payment-report-only.https.html.ini
@@ -0,0 +1,5 @@
+[payment-report-only.https.html]
+ expected: TIMEOUT
+ [PaymentRequest report only mode]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/payment-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/payment-reporting.https.html.ini
new file mode 100644
index 0000000000..b92c4f8e47
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/payment-reporting.https.html.ini
@@ -0,0 +1,5 @@
+[payment-reporting.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [PaymentRequest Report Format]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/picture-in-picture-report-only.html.ini b/testing/web-platform/meta/permissions-policy/reporting/picture-in-picture-report-only.html.ini
new file mode 100644
index 0000000000..d3a82117d8
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/picture-in-picture-report-only.html.ini
@@ -0,0 +1,5 @@
+[picture-in-picture-report-only.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Picture-in-Picture report only mode]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/picture-in-picture-reporting.html.ini b/testing/web-platform/meta/permissions-policy/reporting/picture-in-picture-reporting.html.ini
new file mode 100644
index 0000000000..3c5a9e8241
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/picture-in-picture-reporting.html.ini
@@ -0,0 +1,5 @@
+[picture-in-picture-reporting.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Picture-in-Picture Report Format]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/report-only-and-enforce.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/reporting/report-only-and-enforce.https.sub.html.ini
new file mode 100644
index 0000000000..5cdd1b2285
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/report-only-and-enforce.https.sub.html.ini
@@ -0,0 +1,3 @@
+[report-only-and-enforce.https.sub.html]
+ [Enforcing policy receives reports when both enforcing and report-only policies are set.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/report-only-single-endpoint.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/reporting/report-only-single-endpoint.https.sub.html.ini
new file mode 100644
index 0000000000..3ab945ff43
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/report-only-single-endpoint.https.sub.html.ini
@@ -0,0 +1,4 @@
+[report-only-single-endpoint.https.sub.html]
+ expected: TIMEOUT
+ [Reporting-Endpoints defined endpoint received reports in report-only mode.]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/permissions-policy/reporting/report-to-multiple-endpoints.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/reporting/report-to-multiple-endpoints.https.sub.html.ini
new file mode 100644
index 0000000000..f5206e911a
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/report-to-multiple-endpoints.https.sub.html.ini
@@ -0,0 +1,3 @@
+[report-to-multiple-endpoints.https.sub.html]
+ [Reporting-Endpoints defined endpoint received reports.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/report-to-single-endpoint.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/reporting/report-to-single-endpoint.https.sub.html.ini
new file mode 100644
index 0000000000..4efa769de7
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/report-to-single-endpoint.https.sub.html.ini
@@ -0,0 +1,3 @@
+[report-to-single-endpoint.https.sub.html]
+ [Reporting-Endpoints defined endpoint received reports.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/screen-wake-lock-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/screen-wake-lock-reporting.https.html.ini
new file mode 100644
index 0000000000..12f3efbea8
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/screen-wake-lock-reporting.https.html.ini
@@ -0,0 +1,5 @@
+[screen-wake-lock-reporting.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Screen Wake Lock Report Format]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/serial-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/serial-report-only.https.html.ini
new file mode 100644
index 0000000000..15caf985e4
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/serial-report-only.https.html.ini
@@ -0,0 +1,8 @@
+[serial-report-only.https.html]
+ expected:
+ if (os == "android") and fission: [TIMEOUT, OK]
+ [getPorts in serial report only mode]
+ expected: FAIL
+
+ [requestPort in serial report only mode]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/serial-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/serial-reporting.https.html.ini
new file mode 100644
index 0000000000..e0636375bf
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/serial-reporting.https.html.ini
@@ -0,0 +1,8 @@
+[serial-reporting.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [requestPort in serial reporting mode]
+ expected: FAIL
+
+ [getPorts in serial reporting mode]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/sync-xhr-report-only.html.ini b/testing/web-platform/meta/permissions-policy/reporting/sync-xhr-report-only.html.ini
new file mode 100644
index 0000000000..884b07e14e
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/sync-xhr-report-only.html.ini
@@ -0,0 +1,5 @@
+[sync-xhr-report-only.html]
+ expected: TIMEOUT
+ [Sync-xhr report only mode]
+ expected: TIMEOUT
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/sync-xhr-reporting.html.ini b/testing/web-platform/meta/permissions-policy/reporting/sync-xhr-reporting.html.ini
new file mode 100644
index 0000000000..8dceffedee
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/sync-xhr-reporting.html.ini
@@ -0,0 +1,5 @@
+[sync-xhr-reporting.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Sync-xhr Report Format]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/usb-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/usb-report-only.https.html.ini
new file mode 100644
index 0000000000..0f6dfaa3cd
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/usb-report-only.https.html.ini
@@ -0,0 +1,5 @@
+[usb-report-only.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [USB report only mode]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/usb-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/usb-reporting.https.html.ini
new file mode 100644
index 0000000000..ac9fe7a419
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/usb-reporting.https.html.ini
@@ -0,0 +1,5 @@
+[usb-reporting.https.html]
+ expected: ERROR
+ [USB Report Format]
+ expected: NOTRUN
+
diff --git a/testing/web-platform/meta/permissions-policy/reporting/xr-report-only.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/xr-report-only.https.html.ini
new file mode 100644
index 0000000000..b8b051a3b3
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/xr-report-only.https.html.ini
@@ -0,0 +1,5 @@
+[xr-report-only.https.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [XR report only mode]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/reporting/xr-reporting.https.html.ini b/testing/web-platform/meta/permissions-policy/reporting/xr-reporting.https.html.ini
new file mode 100644
index 0000000000..95d4887d84
--- /dev/null
+++ b/testing/web-platform/meta/permissions-policy/reporting/xr-reporting.https.html.ini
@@ -0,0 +1,4 @@
+[xr-reporting.https.html]
+ [XR Report Format]
+ expected: FAIL
+