bluetooth-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html | Error | 0 / 0 | NOT IMPLEMENTED | Web Bluetooth (navigator.bluetooth; the helper /bluetooth/resources/bluetooth-test.js is not fetched) |
bluetooth-allowed-by-permissions-policy-attribute.https.sub.html | Error | 0 / 0 | NOT IMPLEMENTED | Web Bluetooth (navigator.bluetooth; the helper /bluetooth/resources/bluetooth-test.js is not fetched) |
bluetooth-allowed-by-permissions-policy.https.sub.html | Error | 0 / 0 | NOT IMPLEMENTED | Web Bluetooth (navigator.bluetooth; the helper /bluetooth/resources/bluetooth-test.js is not fetched) |
bluetooth-default-permissions-policy.https.sub.html | Error | 0 / 0 | NOT IMPLEMENTED | Web Bluetooth (navigator.bluetooth; the helper /bluetooth/resources/bluetooth-test.js is not fetched) |
bluetooth-disabled-by-permissions-policy.https.sub.html | Error | 0 / 0 | NOT IMPLEMENTED | Web Bluetooth (navigator.bluetooth; the helper /bluetooth/resources/bluetooth-test.js is not fetched) |
experimental-features/focus-without-user-activation-default-permissions-policy.https.sub.html | Fail | 1 / 2 | TEST BUG | the test expects the default allowlist * for focus-without-user-activation (a cross-origin iframe is allowed); HTML defines 'self' (https://html.spec.whatwg.org/multipage/infrastructure.html#policy-controlled-features); fails in every browser |
experimental-features/focus-without-user-activation-disabled-by-permissions-policy-cross-origin.https.sub.html | Pass | 1 / 1 | | |
experimental-features/focus-without-user-activation-disabled-by-permissions-policy.https.sub.html | Pass | 1 / 1 | | |
experimental-features/focus-without-user-activation-disabled.html | Pass | 1 / 1 | | |
experimental-features/focus-without-user-activation-enabled.sub.html | Pass | 1 / 1 | | |
experimental-features/focus-without-user-activation-focused-frame-descendant-cross-origin.https.sub.html | Fail | 1 / 2 | TEST BUG | the test expects the focused-frame heuristics of an experimental implementation of Chromium (a frame that has the focus, or an ancestor of the focused frame, may move the focus although its focus-without-user-activation policy is denied, and the policy of the document that calls focus() is checked instead of the one of the target); the allow focus steps of HTML only check the policy and the transient activation of the document of the target (https://html.spec.whatwg.org/multipage/interaction.html#allow-focus-steps). The stable browsers do not enforce the policy at all: the subtests that expect a focus to be blocked fail in them |
experimental-features/focus-without-user-activation-focused-frame-descendant-remote.https.sub.html | Fail | 0 / 1 | TEST BUG | the test expects the focused-frame heuristics of an experimental implementation of Chromium (a frame that has the focus, or an ancestor of the focused frame, may move the focus although its focus-without-user-activation policy is denied, and the policy of the document that calls focus() is checked instead of the one of the target); the allow focus steps of HTML only check the policy and the transient activation of the document of the target (https://html.spec.whatwg.org/multipage/interaction.html#allow-focus-steps). The stable browsers do not enforce the policy at all: the subtests that expect a focus to be blocked fail in them |
experimental-features/focus-without-user-activation-focused-frame-descendant.html | Fail | 3 / 7 | TEST BUG | the test expects the focused-frame heuristics of an experimental implementation of Chromium (a frame that has the focus, or an ancestor of the focused frame, may move the focus although its focus-without-user-activation policy is denied, and the policy of the document that calls focus() is checked instead of the one of the target); the allow focus steps of HTML only check the policy and the transient activation of the document of the target (https://html.spec.whatwg.org/multipage/interaction.html#allow-focus-steps). The stable browsers do not enforce the policy at all: the subtests that expect a focus to be blocked fail in them |
experimental-features/focus-without-user-activation-setter-policy.html | Fail | 0 / 2 | TEST BUG | the test expects the focused-frame heuristics of an experimental implementation of Chromium (a frame that has the focus, or an ancestor of the focused frame, may move the focus although its focus-without-user-activation policy is denied, and the policy of the document that calls focus() is checked instead of the one of the target); the allow focus steps of HTML only check the policy and the transient activation of the document of the target (https://html.spec.whatwg.org/multipage/interaction.html#allow-focus-steps). The stable browsers do not enforce the policy at all: the subtests that expect a focus to be blocked fail in them |
experimental-features/focus-without-user-activation-target-frame-state-ignored.html | Fail | 1 / 2 | TEST RUNNER | test_driver.click() on an iframe element does not give a transient activation to the window of the iframe, so the sanity check of the first subtest fails (the second subtest passes) |
experimental-features/permissions-policy-header-host-wildcard.https.sub.html | Pass | 1 / 1 | | |
experimental-features/permissions-policy-header-port-wildcard.https.sub.html | Pass | 1 / 1 | | |
experimental-features/permissions-policy-header-scheme-only.https.sub.html | Pass | 1 / 1 | | |
historical-feature-policy-header.html | Pass | 1 / 1 | | |
historical.html | Pass | 4 / 4 | | |
idlharness.window.js | Pass | 44 / 44 | | |
navigate-to-blob.sub.html | Pass | 2 / 2 | | |
payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html | Fail | 1 / 2 | NOT IMPLEMENTED | the Payment Request API (PaymentRequest); payment-extension-... also needs Web Authentication and test_driver.add_virtual_authenticator() |
payment-allowed-by-permissions-policy-attribute.https.sub.html | Fail | 0 / 3 | NOT IMPLEMENTED | the Payment Request API (PaymentRequest); payment-extension-... also needs Web Authentication and test_driver.add_virtual_authenticator() |
payment-allowed-by-permissions-policy.https.sub.html | Fail | 1 / 4 | NOT IMPLEMENTED | the Payment Request API (PaymentRequest); payment-extension-... also needs Web Authentication and test_driver.add_virtual_authenticator() |
payment-default-permissions-policy.https.sub.html | Fail | 1 / 3 | NOT IMPLEMENTED | the Payment Request API (PaymentRequest); payment-extension-... also needs Web Authentication and test_driver.add_virtual_authenticator() |
payment-disabled-by-permissions-policy.https.sub.html | Fail | 2 / 3 | NOT IMPLEMENTED | the Payment Request API (PaymentRequest); payment-extension-... also needs Web Authentication and test_driver.add_virtual_authenticator() |
payment-extension-allowed-by-permissions-policy-attribute.https.sub.html | Timeout | 0 / 2 | NOT IMPLEMENTED | the Payment Request API (PaymentRequest); payment-extension-... also needs Web Authentication and test_driver.add_virtual_authenticator() |
permissions-policy-frame-policy-allowed-for-all.https.sub.html | Pass | 78 / 78 | | |
permissions-policy-frame-policy-allowed-for-self.https.sub.html | Pass | 86 / 86 | | |
permissions-policy-frame-policy-allowed-for-some-override.https.sub.html | Pass | 32 / 32 | | |
permissions-policy-frame-policy-allowed-for-some.https.sub.html | Pass | 76 / 76 | | |
permissions-policy-frame-policy-disallowed-for-all.https.sub.html | Pass | 78 / 78 | | |
permissions-policy-frame-policy-timing.https.sub.html | Fail | 0 / 2 | NOT IMPLEMENTED | Media Capture and Streams: the iframes report the state of the camera feature with navigator.mediaDevices.getUserMedia() |
permissions-policy-header-policy-allowed-for-all.https.sub.html | Pass | 7 / 7 | | |
permissions-policy-header-policy-allowed-for-malformed-wildcard.https.sub.html | Pass | 7 / 7 | | |
permissions-policy-header-policy-allowed-for-self.https.sub.html | Pass | 5 / 5 | | |
permissions-policy-header-policy-allowed-for-some.https.sub.html | Pass | 10 / 10 | | |
permissions-policy-header-policy-allowed-for-wildcard.https.sub.html | Pass | 9 / 9 | | |
permissions-policy-header-policy-declined.https.sub.html | Fail | 9 / 10 | TEST BUG | the test expects getAllowlistForFeature() to return the declared origins although the feature is not allowed for the origin of the document (the header does not list self); the method returns an empty list in that case (https://w3c.github.io/webappsec-permissions-policy/#dom-permissionspolicy-getallowlistforfeature, step 4); the other subtests pass |
permissions-policy-header-policy-disallowed-for-all.https.sub.html | Pass | 5 / 5 | | |
permissions-policy-javascript-url-frame-policy.https.html | Pass | 2 / 2 | | |
permissions-policy-nested-header-policy-allowed-for-all.https.sub.html | Pass | 6 / 6 | | |
permissions-policy-nested-header-policy-allowed-for-self.https.sub.html | Pass | 6 / 6 | | |
permissions-policy-nested-header-policy-disallowed-for-all.https.sub.html | Pass | 6 / 6 | | |
permissions-policy-nested-local-frame-delegation.https.sub.html | Pass | 3 / 3 | | |
permissions-policy-opaque-origin-history.https.html | Pass | 1 / 1 | | |
permissions-policy-opaque-origin.https.html | Fail | 0 / 1 | BUG | the 'src' keyword of the allow attribute of a sandboxed iframe matches every opaque origin, as in Chromium (where the test fails too): the document that the iframe navigates to still gets the feature, although it is not the document of the src attribute |
picture-in-picture-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html | Fail | 0 / 2 | NOT IMPLEMENTED | the Picture-in-Picture API (document.pictureInPictureEnabled, requestPictureInPicture()) |
picture-in-picture-allowed-by-permissions-policy-attribute.https.sub.html | Fail | 0 / 2 | NOT IMPLEMENTED | the Picture-in-Picture API (document.pictureInPictureEnabled, requestPictureInPicture()) |
picture-in-picture-allowed-by-permissions-policy.https.sub.html | Fail | 0 / 3 | NOT IMPLEMENTED | the Picture-in-Picture API (document.pictureInPictureEnabled, requestPictureInPicture()) |
picture-in-picture-default-permissions-policy.https.sub.html | Fail | 0 / 3 | NOT IMPLEMENTED | the Picture-in-Picture API (document.pictureInPictureEnabled, requestPictureInPicture()) |
picture-in-picture-disabled-by-permissions-policy.https.sub.html | Fail | 0 / 3 | NOT IMPLEMENTED | the Picture-in-Picture API (document.pictureInPictureEnabled, requestPictureInPicture()) |
picture-in-picture-supported-by-permissions-policy.html | Pass | 1 / 1 | | |
policy-extends-to-data-url-all.html | Pass | 1 / 1 | | |
policy-extends-to-sandbox-all.html | Pass | 1 / 1 | | |
policy-extends-to-sandbox.html | Pass | 1 / 1 | | |
reporting/bluetooth-report-only.https.html | Error | 0 / 0 | NOT IMPLEMENTED | Web Bluetooth (navigator.bluetooth; the helper /bluetooth/resources/bluetooth-test.js is not fetched) |
reporting/bluetooth-reporting.https.html | Error | 0 / 0 | NOT IMPLEMENTED | Web Bluetooth (navigator.bluetooth; the helper /bluetooth/resources/bluetooth-test.js is not fetched) |
reporting/camera-potential-report-only.https.html | Pass | 1 / 1 | | |
reporting/camera-potential-reporting.https.html | Pass | 1 / 1 | | |
reporting/camera-report-only.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | Media Capture and Streams: the test uses the camera/microphone features with navigator.mediaDevices.getUserMedia() (and /mediacapture-streams/permission-helper.js, which is not fetched); the reports of the features that the library implements are tested by reporting/sync-xhr-report-only.html |
reporting/camera-reporting.https.html | Error | 0 / 1 | NOT IMPLEMENTED | Media Capture and Streams: the test uses the camera/microphone features with navigator.mediaDevices.getUserMedia() (and /mediacapture-streams/permission-helper.js, which is not fetched); the reports of the features that the library implements are tested by reporting/sync-xhr-report-only.html |
reporting/encrypted-media-report-only.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | Encrypted Media Extensions (navigator.requestMediaKeySystemAccess()) |
reporting/encrypted-media-reporting.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | Encrypted Media Extensions (navigator.requestMediaKeySystemAccess()) |
reporting/fullscreen-report-only.html | Pass | 1 / 1 | | |
reporting/fullscreen-reporting.html | Pass | 1 / 1 | | |
reporting/generic-sensor-report-only.https.html | Pass | 1 / 1 | | |
reporting/generic-sensor-reporting.https.html | Pass | 1 / 1 | | |
reporting/geolocation-report-only.https.html | Fail | 0 / 1 | TEST BUG | the test expects a position but does not grant the geolocation permission (test_driver.set_permission()): the report is checked, then getCurrentPosition() fails with PERMISSION_DENIED |
reporting/geolocation-reporting.https.html | Pass | 1 / 1 | | |
reporting/microphone-report-only.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | Media Capture and Streams: the test uses the camera/microphone features with navigator.mediaDevices.getUserMedia() (and /mediacapture-streams/permission-helper.js, which is not fetched); the reports of the features that the library implements are tested by reporting/sync-xhr-report-only.html |
reporting/microphone-reporting.https.html | Error | 0 / 1 | NOT IMPLEMENTED | Media Capture and Streams: the test uses the camera/microphone features with navigator.mediaDevices.getUserMedia() (and /mediacapture-streams/permission-helper.js, which is not fetched); the reports of the features that the library implements are tested by reporting/sync-xhr-report-only.html |
reporting/midi-report-only.https.html | Timeout | 0 / 1 | NOT IMPLEMENTED | the Web MIDI API (navigator.requestMIDIAccess()) |
reporting/midi-reporting.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | the Web MIDI API (navigator.requestMIDIAccess()) |
reporting/payment-report-only.https.html | Timeout | 0 / 1 | NOT IMPLEMENTED | the Payment Request API (PaymentRequest) |
reporting/payment-reporting.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | the Payment Request API (PaymentRequest) |
reporting/picture-in-picture-report-only.html | Fail | 0 / 1 | NOT IMPLEMENTED | the Picture-in-Picture API (document.pictureInPictureEnabled, requestPictureInPicture()) |
reporting/picture-in-picture-reporting.html | Fail | 0 / 1 | NOT IMPLEMENTED | the Picture-in-Picture API (document.pictureInPictureEnabled, requestPictureInPicture()) |
reporting/report-only-and-enforce.https.sub.html | Fail | 0 / 1 | NOT IMPLEMENTED | Media Capture and Streams: the test uses the camera/microphone features with navigator.mediaDevices.getUserMedia() (and /mediacapture-streams/permission-helper.js, which is not fetched); the reports of the features that the library implements are tested by reporting/sync-xhr-report-only.html |
reporting/report-only-single-endpoint.https.sub.html | Fail | 0 / 1 | NOT IMPLEMENTED | Media Capture and Streams: the test uses the camera/microphone features with navigator.mediaDevices.getUserMedia() (and /mediacapture-streams/permission-helper.js, which is not fetched); the reports of the features that the library implements are tested by reporting/sync-xhr-report-only.html |
reporting/report-to-multiple-endpoints.https.sub.html | Fail | 0 / 1 | NOT IMPLEMENTED | Media Capture and Streams: the test uses the camera/microphone features with navigator.mediaDevices.getUserMedia() (and /mediacapture-streams/permission-helper.js, which is not fetched); the reports of the features that the library implements are tested by reporting/sync-xhr-report-only.html |
reporting/report-to-single-endpoint.https.sub.html | Fail | 0 / 1 | NOT IMPLEMENTED | Media Capture and Streams: the test uses the camera/microphone features with navigator.mediaDevices.getUserMedia() (and /mediacapture-streams/permission-helper.js, which is not fetched); the reports of the features that the library implements are tested by reporting/sync-xhr-report-only.html |
reporting/screen-wake-lock-reporting.https.html | Pass | 1 / 1 | | |
reporting/serial-report-only.https.html | Fail | 0 / 2 | NOT IMPLEMENTED | the Web Serial API (navigator.serial) |
reporting/serial-reporting.https.html | Fail | 0 / 2 | NOT IMPLEMENTED | the Web Serial API (navigator.serial) |
reporting/sync-xhr-report-only.html | Pass | 1 / 1 | | |
reporting/sync-xhr-reporting.html | Fail | 0 / 1 | TEST BUG | the report has the expected type, body and source location, then the test calls toJSON() on it: Report and the report bodies are dictionaries since w3c/reporting#284 (https://w3c.github.io/reporting/#dictdef-report), so the reports given to the observers are plain objects without toJSON() (the browsers still implement the former Report interface) |
reporting/usb-report-only.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | WebUSB (navigator.usb) |
reporting/usb-reporting.https.html | Error | 0 / 1 | NOT IMPLEMENTED | WebUSB (navigator.usb) |
reporting/xr-report-only.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | the WebXR Device API (navigator.xr) |
reporting/xr-reporting.https.html | Fail | 0 / 1 | NOT IMPLEMENTED | the WebXR Device API (navigator.xr) |
speaker-selection-allowed-by-permissions-policy.https.sub.html | Pass | 4 / 4 | | |
speaker-selection-disabled-by-permissions-policy.https.sub.html | Pass | 3 / 3 | | |