Closed Bug 1788730 Opened 3 years ago Closed 3 years ago

[wpt-sync] Sync PR 35695 - Reland "webauthn: Update abort handling to take an abort reason"

Categories

(Core :: DOM: Web Authentication, task, P4)

task

Tracking

()

RESOLVED FIXED
106 Branch
Tracking Status
firefox106 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

(Depends on 1 open bug, )

Details

(Whiteboard: [wptsync downstream])

Attachments

(1 file)

Sync web-platform-tests PR 35695 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/35695
Details from upstream follow.

Amos Lim <eui-sang.lim@samsung.com> wrote:

Reland "webauthn: Update abort handling to take an abort reason"

This is a reland of 626cf945c1cb51b2b51cf145d5be7cdaf6e2879b.

Fix test failures in linux-bfcache-rel to pass isUserConsenting false
to fix a race between resolving it and aborting.

Original change's description:

webauthn: Update abort handling to take an abort reason

AbortController now has a reason [1] parameter which
has been added to Web Authentication [2], Credential Management [3],
and Web OTP [4]. We should update CredentialsContainer to take
this reason to the promise then aborting a request.

[1] https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal/reason
[2] https://github.com/w3c/webauthn/pull/1706
[3] https://github.com/w3c/webappsec-credential-management/pull/196
[4] https://github.com/WICG/web-otp/pull/57

Bug: 1272541, 1329938
Change-Id: Idb9ef40d6a97ae240ae3a28892a426e4c0ffbfef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3715820
Commit-Queue: Euisang Lim \<eui-sang.lim@samsung.com>
Commit-Queue: Nina Satragno \<nsatragno@chromium.org>
Reviewed-by: Nina Satragno \<nsatragno@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1039866}

Bug: 1272541, 1329938, 1357621
Change-Id: I3861d5c2440519592e0438e8f4df774372a7c0ba
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3861890
Reviewed-by: Nina Satragno \<nsatragno@chromium.org>
Commit-Queue: Nina Satragno \<nsatragno@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1041601}

Component: web-platform-tests → DOM: Web Authentication
Product: Testing → Core
Whiteboard: [wptsync downstream] → [wptsync downstream error]
Attached file Notable wpt changes —
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 35 tests and 2 subtests ## Status Summary ### Firefox `OK` : 1[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview] 13[GitHub] `PASS` : 1[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview] 127[GitHub] `FAIL` : 2[Gecko-linux1804-64-qr-debug] 5[Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 7[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview] 27[GitHub] `TIMEOUT`: 2[Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 44[GitHub] `NOTRUN` : 2[Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 5[Gecko-linux1804-64-qr-debug] 7[Gecko-linux1804-64-qr-opt] 118[GitHub] ### Chrome `OK` : 35 `PASS` : 295 `FAIL` : 19 ### Safari `OK` : 30 `PASS` : 219 `FAIL` : 66 `TIMEOUT`: 8 `ERROR` : 1 `NOTRUN` : 24 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=9b9dbc74f8049b210e023a0971d9dbcaef1badd4) [GitHub PR Head](https://wpt.fyi/results/?sha=c50bc19ebc05b5b0f0c6bdd205ad590c1ff883b0&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=c50bc19ebc05b5b0f0c6bdd205ad590c1ff883b0&label=pr_base) ## Details ### Firefox-only Failures * [/credential-management/otpcredential-get-basics.https.html](https://wpt.live/credential-management/otpcredential-get-basics.https.html) [[wpt.fyi](https://wpt.fyi/results/credential-management/otpcredential-get-basics.https.html)] * Should abort request: `FAIL` * [/webauthn/createcredential-attachment.https.html](https://wpt.live/webauthn/createcredential-attachment.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-attachment.https.html)] * navigator.credentials.create() with usb authenticator, attachment as cross-platform: `TIMEOUT` * navigator.credentials.create() with ble authenticator, attachment as cross-platform: `NOTRUN` * navigator.credentials.create() with nfc authenticator, attachment as cross-platform: `NOTRUN` * [/webauthn/createcredential-excludecredentials.https.html](https://wpt.live/webauthn/createcredential-excludecredentials.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-excludecredentials.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * excludeCredentials missing: `TIMEOUT` * excludeCredentials empty array: `NOTRUN` * exclude random (non-existing) credential: `NOTRUN` * [/webauthn/createcredential-extensions.https.html](https://wpt.live/webauthn/createcredential-extensions.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-extensions.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * extensions is a nonsensical JSON string: `TIMEOUT` * [/webauthn/createcredential-getpublickey.https.html](https://wpt.live/webauthn/createcredential-getpublickey.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-getpublickey.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * WebAuthn getPublicKey: `TIMEOUT` * [/webauthn/createcredential-large-blob-not-supported.https.html](https://wpt.live/webauthn/createcredential-large-blob-not-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-large-blob-not-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * [/webauthn/createcredential-large-blob-supported.https.html](https://wpt.live/webauthn/createcredential-large-blob-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-large-blob-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * [/webauthn/createcredential-minpinlength.https.html](https://wpt.live/webauthn/createcredential-minpinlength.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-minpinlength.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * [/webauthn/createcredential-passing.https.html](https://wpt.live/webauthn/createcredential-passing.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-passing.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * passing credentials.create() with default arguments: `TIMEOUT` * passing credentials.create() with rpId (hostname): `NOTRUN` * very short user id: `NOTRUN` * max length user id: `NOTRUN` * Uint8Array user id: `NOTRUN` * Int8Array user id: `NOTRUN` * Int16Array user id: `NOTRUN` * Int32Array user id: `NOTRUN` * Float32Array user id: `NOTRUN` * DataView user id: `NOTRUN` * Int16Array challenge: `NOTRUN` * Int32Array challenge: `NOTRUN` * Float32Array challenge: `NOTRUN` * Float64Array challenge: `NOTRUN` * DataView challenge: `NOTRUN` * Absurdly large challenge: `NOTRUN` * pubKeyCredParams is empty Array: `NOTRUN` * EC256 pubKeyCredParams: `NOTRUN` * SelectEC256 pubKeyCredParams from a list: `NOTRUN` * passing credentials.create() with no timeout: `NOTRUN` * authenticatorSelection is undefined: `NOTRUN` * authenticatorSelection is empty object: `NOTRUN` * authenticatorSelection default values: `NOTRUN` * authenticatorSelection attachment undefined: `NOTRUN` * authenticatorSelection residentKey undefined: `NOTRUN` * authenticatorSelection residentKey false: `NOTRUN` * authenticatorSelection userVerification undefined: `NOTRUN` * authenticatorSelection userVerification discouraged: `NOTRUN` * attestation parameter: attestation is "none": `NOTRUN` * attestation parameter: attestation is "indirect": `NOTRUN` * attestation parameter: attestation is "direct": `NOTRUN` * attestation parameter: attestation is undefined: `NOTRUN` * extensions undefined: `NOTRUN` * extensions are empty object: `NOTRUN` * extensions are dict of empty strings: `NOTRUN` * [/webauthn/credblob-not-supported.https.html](https://wpt.live/webauthn/credblob-not-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/credblob-not-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * [/webauthn/credblob-supported.https.html](https://wpt.live/webauthn/credblob-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/credblob-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * [/webauthn/getcredential-attachment.https.html](https://wpt.live/webauthn/getcredential-attachment.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-attachment.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * navigator.credentials.get() with usb authenticator, attachment as cross-platform: `TIMEOUT` * navigator.credentials.get() with ble authenticator, attachment as cross-platform: `NOTRUN` * navigator.credentials.get() with nfc authenticator, attachment as cross-platform: `NOTRUN` * [/webauthn/getcredential-badargs-rpid.https.html](https://wpt.live/webauthn/getcredential-badargs-rpid.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-badargs-rpid.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * Bad rpId: null: `NOTRUN` * Bad rpId: invalid domain (has space): `NOTRUN` * Bad rpId: invalid domain (starts with dash): `NOTRUN` * Bad rpId: invalid domain (starts with number): `NOTRUN` * Bad rpId: host + port: `NOTRUN` * [/webauthn/getcredential-badargs-userverification.https.html](https://wpt.live/webauthn/getcredential-badargs-userverification.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-badargs-userverification.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * [/webauthn/getcredential-extensions.https.html](https://wpt.live/webauthn/getcredential-extensions.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-extensions.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * Bad extensions: extensions is string: `TIMEOUT` * extensions is null: `NOTRUN` * extensions is empty Array: `NOTRUN` * extensions is empty ArrayBuffer: `NOTRUN` * ignored extension: `NOTRUN` * extension ID too long: `NOTRUN` * [/webauthn/getcredential-large-blob-not-supported.https.html](https://wpt.live/webauthn/getcredential-large-blob-not-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-large-blob-not-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * [/webauthn/getcredential-large-blob-supported.https.html](https://wpt.live/webauthn/getcredential-large-blob-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-large-blob-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * [/webauthn/getcredential-passing.https.html](https://wpt.live/webauthn/getcredential-passing.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-passing.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * passing credentials.get() with default args: `TIMEOUT` * passing credentials.create() with no timeout: `NOTRUN` * rpId undefined: `NOTRUN` * passing credentials.get() with rpId (hostname): `NOTRUN` * authenticatorSelection userVerification undefined: `NOTRUN` * authenticatorSelection userVerification preferred: `NOTRUN` * authenticatorSelection userVerification discouraged: `NOTRUN` * extensions undefined: `NOTRUN` * extensions are empty object: `NOTRUN` * extensions are dict of empty strings: `NOTRUN` * [/webauthn/getcredential-rk-passing.https.html](https://wpt.live/webauthn/getcredential-rk-passing.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-rk-passing.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] * empty allowCredentials: `TIMEOUT` * undefined allowCredentials: `NOTRUN` * [/webauthn/idlharness.https.window.html](https://wpt.live/webauthn/idlharness.https.window.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/idlharness.https.window.html)] * PublicKeyCredential interface: attribute authenticatorAttachment: `FAIL` * AuthenticatorAttestationResponse interface: operation getTransports(): `FAIL` * AuthenticatorAttestationResponse interface: operation getAuthenticatorData(): `FAIL` * AuthenticatorAttestationResponse interface: operation getPublicKey(): `FAIL` * AuthenticatorAttestationResponse interface: operation getPublicKeyAlgorithm(): `FAIL` * [/webauthn/remote-desktop-client-override.tentative.https.html](https://wpt.live/webauthn/remote-desktop-client-override.tentative.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/remote-desktop-client-override.tentative.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] ### New Tests That Don't Pass * [/credential-management/otpcredential-get-basics.https.html](https://wpt.live/credential-management/otpcredential-get-basics.https.html) [[wpt.fyi](https://wpt.fyi/results/credential-management/otpcredential-get-basics.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * Basic usage: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Handle multiple requests in different order.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Handle multiple requests with success and error.: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Deal with cancelled requests: `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Should abort request: `FAIL` (Chrome: `PASS`, Safari: `PASS`) * Should abort request with reason: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * [/webauthn/createcredential-abort.https.html](https://wpt.live/webauthn/createcredential-abort.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-abort.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * navigator.credentials.create() after abort reason: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * navigator.credentials.create() before abort reason: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * navigator.credentials.create() after abort reason with Error: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * navigator.credentials.create() before abort reason with Error: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * [/webauthn/createcredential-attachment.https.html](https://wpt.live/webauthn/createcredential-attachment.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-attachment.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `TIMEOUT`) * navigator.credentials.create() with usb authenticator, attachment as cross-platform: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * navigator.credentials.create() with ble authenticator, attachment as cross-platform: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * navigator.credentials.create() with nfc authenticator, attachment as cross-platform: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * navigator.credentials.create() with internal authenticator, attachment as platform: `NOTRUN` (Chrome: `PASS`, Safari: `TIMEOUT`) * [/webauthn/createcredential-badargs-authnrselection.https.html](https://wpt.live/webauthn/createcredential-badargs-authnrselection.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-badargs-authnrselection.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * [/webauthn/createcredential-badargs-challenge.https.html](https://wpt.live/webauthn/createcredential-badargs-challenge.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-badargs-challenge.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * [/webauthn/createcredential-badargs-rp.https.html](https://wpt.live/webauthn/createcredential-badargs-rp.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-badargs-rp.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * [/webauthn/createcredential-badargs-user.https.html](https://wpt.live/webauthn/createcredential-badargs-user.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-badargs-user.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * [/webauthn/createcredential-excludecredentials.https.html](https://wpt.live/webauthn/createcredential-excludecredentials.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-excludecredentials.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * excludeCredentials missing: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * excludeCredentials empty array: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * exclude existing credential: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * exclude random (non-existing) credential: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * [/webauthn/createcredential-extensions.https.html](https://wpt.live/webauthn/createcredential-extensions.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-extensions.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * extensions is a nonsensical JSON string: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * empty appid in create request: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * null appid in create request: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * appid in create request: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/createcredential-getpublickey.https.html](https://wpt.live/webauthn/createcredential-getpublickey.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-getpublickey.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * WebAuthn getPublicKey: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * [/webauthn/createcredential-large-blob-not-supported.https.html](https://wpt.live/webauthn/createcredential-large-blob-not-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-large-blob-not-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * navigator.credentials.create() with largeBlob.write set: `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.create() with largeBlob.read set: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.create() with largeBlob.support set to preferred and not supported by authenticator: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.create() with largeBlob.support not set and not supported by authenticator: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.create() with largeBlob.support set to required and not supported by authenticator: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/createcredential-large-blob-supported.https.html](https://wpt.live/webauthn/createcredential-large-blob-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-large-blob-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * navigator.credentials.create() with largeBlob.support set to preferred and supported by authenticator: `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.create() with largeBlob.support not set and supported by authenticator: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.create() with largeBlob.support set to required and supported by authenticator: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/createcredential-minpinlength.https.html](https://wpt.live/webauthn/createcredential-minpinlength.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-minpinlength.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * navigator.credentials.create() with minPinLength requested: `TIMEOUT` (Chrome: `FAIL`, Safari: `FAIL`) * [/webauthn/createcredential-passing.https.html](https://wpt.live/webauthn/createcredential-passing.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-passing.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * passing credentials.create() with default arguments: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * passing credentials.create() with rpId (hostname): `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * very short user id: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * max length user id: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Uint8Array user id: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Int8Array user id: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Int16Array user id: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Int32Array user id: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Float32Array user id: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * DataView user id: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Int16Array challenge: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Int32Array challenge: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Float32Array challenge: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Float64Array challenge: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * DataView challenge: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Absurdly large challenge: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * pubKeyCredParams is empty Array: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * EC256 pubKeyCredParams: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * SelectEC256 pubKeyCredParams from a list: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * passing credentials.create() with no timeout: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection is undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection is empty object: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection default values: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection attachment undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection attachment empty string: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection attachment empty object: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection attachment null: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection attachment unknown value: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection residentKey undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection residentKey false: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection userVerification undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection userVerification discouraged: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection userVerification empty string: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection userVerification empty object: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection userVerification unknown value: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection userVerification null: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * attestation parameter: attestation is "none": `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * attestation parameter: attestation is "indirect": `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * attestation parameter: attestation is "direct": `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * attestation parameter: attestation is undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * attestation parameter: attestation is empty object: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * attestation parameter: attestation is empty array: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * attestation parameter: attestation is null: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * attestation parameter: attestation is "noneofyourbusiness": `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * attestation parameter: attestation is empty string: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * extensions undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * extensions are empty object: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * extensions are dict of empty strings: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * [/webauthn/createcredential-pubkeycredparams.https.html](https://wpt.live/webauthn/createcredential-pubkeycredparams.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-pubkeycredparams.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * Bad pubKeyCredParams: first param has bad alg (42): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * Bad pubKeyCredParams: first param has bad alg (0): `FAIL` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/createcredential-resident-key.https.html](https://wpt.live/webauthn/createcredential-resident-key.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-resident-key.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `TIMEOUT`) * U2F: navigator.credentials.create() with credProps extension, rk=discouraged: `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * U2F: navigator.credentials.create() with credProps extension, rk=preferred: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * U2F: navigator.credentials.create() with credProps extension, rk=required: `NOTRUN` (Chrome: `PASS`, Safari: `TIMEOUT`) * CTAP 2.0 without resident key support: navigator.credentials.create() with credProps extension, rk=discouraged: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.0 without resident key support: navigator.credentials.create() with credProps extension, rk=preferred: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.0 without resident key support: navigator.credentials.create() with credProps extension, rk=required: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.0 with resident key support: navigator.credentials.create() with credProps extension, rk=discouraged: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.0 with resident key support: navigator.credentials.create() with credProps extension, rk=preferred: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.0 with resident key support: navigator.credentials.create() with credProps extension, rk=required: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.1 without resident key support: navigator.credentials.create() with credProps extension, rk=discouraged: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.1 without resident key support: navigator.credentials.create() with credProps extension, rk=preferred: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.1 without resident key support: navigator.credentials.create() with credProps extension, rk=required: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.1 with resident key support: navigator.credentials.create() with credProps extension, rk=discouraged: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.1 with resident key support: navigator.credentials.create() with credProps extension, rk=preferred: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * CTAP 2.1 with resident key support: navigator.credentials.create() with credProps extension, rk=required: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * [/webauthn/createcredential-timeout.https.html](https://wpt.live/webauthn/createcredential-timeout.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/createcredential-timeout.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * [/webauthn/credblob-not-supported.https.html](https://wpt.live/webauthn/credblob-not-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/credblob-not-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * creation requesting credBlob without authenticator support: `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/credblob-supported.https.html](https://wpt.live/webauthn/credblob-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/credblob-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * assertion without credBlob: `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * assertion with credBlob: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/getcredential-abort.https.html](https://wpt.live/webauthn/getcredential-abort.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-abort.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `TIMEOUT`) * navigator.credentials.get() after abort reason: `FAIL` (Chrome: `FAIL`, Safari: `NOTRUN`) * navigator.credentials.get() before abort reason: `FAIL` (Chrome: `FAIL`, Safari: `NOTRUN`) * navigator.credentials.get() after abort reason with Error: `FAIL` (Chrome: `FAIL`, Safari: `NOTRUN`) * navigator.credentials.get() before abort reason with Error: `FAIL` (Chrome: `FAIL`, Safari: `NOTRUN`) * [/webauthn/getcredential-attachment.https.html](https://wpt.live/webauthn/getcredential-attachment.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-attachment.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * navigator.credentials.get() with usb authenticator, attachment as cross-platform: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * navigator.credentials.get() with ble authenticator, attachment as cross-platform: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * navigator.credentials.get() with nfc authenticator, attachment as cross-platform: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * navigator.credentials.get() with internal authenticator, attachment as platform: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/getcredential-badargs-rpid.https.html](https://wpt.live/webauthn/getcredential-badargs-rpid.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-badargs-rpid.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * Bad rpId: empty string: `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * Bad rpId: null: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Bad rpId: invalid domain (has space): `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Bad rpId: invalid domain (starts with dash): `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Bad rpId: invalid domain (starts with number): `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * Bad rpId: host + port: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * [/webauthn/getcredential-badargs-userverification.https.html](https://wpt.live/webauthn/getcredential-badargs-userverification.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-badargs-userverification.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * Bad userVerification: "required": `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/getcredential-extensions.https.html](https://wpt.live/webauthn/getcredential-extensions.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-extensions.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * Bad extensions: extensions is string: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * extensions is null: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * extensions is empty Array: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * extensions is empty ArrayBuffer: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * ignored extension: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * extension ID too long: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * credProps is only supported at registration: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * Payment extension is only supported at registration: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/getcredential-large-blob-not-supported.https.html](https://wpt.live/webauthn/getcredential-large-blob-not-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-large-blob-not-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * navigator.credentials.get() with largeBlob.support set: `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.get() with largeBlob.read and largeBlob.write set: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.get() with largeBlob.read set without authenticator support: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.get() with largeBlob.write set without authenticator support: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/getcredential-large-blob-supported.https.html](https://wpt.live/webauthn/getcredential-large-blob-supported.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-large-blob-supported.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * navigator.credentials.get() with largeBlob.read set with no blob on authenticator: `TIMEOUT` (Chrome: `PASS`, Safari: `FAIL`) * navigator.credentials.get() read and write blob: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * [/webauthn/getcredential-passing.https.html](https://wpt.live/webauthn/getcredential-passing.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-passing.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * passing credentials.get() with default args: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * passing credentials.create() with no timeout: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * rpId undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * passing credentials.get() with rpId (hostname): `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection userVerification undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection userVerification preferred: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection userVerification discouraged: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * authenticatorSelection userVerification empty string: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection userVerification empty object: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection userVerification unknown value: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * authenticatorSelection userVerification null: `NOTRUN` (Chrome: `PASS`, Safari: `FAIL`) * extensions undefined: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * extensions are empty object: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * extensions are dict of empty strings: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * [/webauthn/getcredential-rk-passing.https.html](https://wpt.live/webauthn/getcredential-rk-passing.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-rk-passing.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * empty allowCredentials: `TIMEOUT` (Chrome: `PASS`, Safari: `PASS`) * undefined allowCredentials: `NOTRUN` (Chrome: `PASS`, Safari: `PASS`) * [/webauthn/getcredential-timeout.https.html](https://wpt.live/webauthn/getcredential-timeout.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/getcredential-timeout.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `ERROR`) * WebAuthn navigator.credentials.get() timeout Tests: `TIMEOUT` (Chrome: `PASS`) * [/webauthn/idlharness.https.window.html](https://wpt.live/webauthn/idlharness.https.window.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/idlharness.https.window.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * PublicKeyCredential interface: attribute authenticatorAttachment: `FAIL` (Chrome: `PASS`, Safari: `PASS`) * PublicKeyCredential interface: operation isConditionalMediationAvailable(): `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * PublicKeyCredential interface: operation toJSON(): `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * PublicKeyCredential interface: operation parseCreationOptionsFromJSON(PublicKeyCredentialCreationOptionsJSON): `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * PublicKeyCredential interface: operation parseRequestOptionsFromJSON(PublicKeyCredentialRequestOptionsJSON): `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * AuthenticatorAttestationResponse interface: operation getTransports(): `FAIL` (Chrome: `PASS`, Safari: `PASS`) * AuthenticatorAttestationResponse interface: operation getAuthenticatorData(): `FAIL` (Chrome: `PASS`, Safari: `PASS`) * AuthenticatorAttestationResponse interface: operation getPublicKey(): `FAIL` (Chrome: `PASS`, Safari: `PASS`) * AuthenticatorAttestationResponse interface: operation getPublicKeyAlgorithm(): `FAIL` (Chrome: `PASS`, Safari: `PASS`) * [/webauthn/remote-desktop-client-override.tentative.https.html](https://wpt.live/webauthn/remote-desktop-client-override.tentative.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/remote-desktop-client-override.tentative.https.html)]: `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`GitHub`] (Chrome: `OK`, Safari: `OK`) * create() with remoteDesktopClientOverride: `TIMEOUT` (Chrome: `FAIL`, Safari: `FAIL`) * get() with remoteDesktopClientOverride on an unauthorized site: `NOTRUN` (Chrome: `FAIL`, Safari: `FAIL`) * [/webauthn/securecontext.http.html](https://wpt.live/webauthn/securecontext.http.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/securecontext.http.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * [/webauthn/securecontext.https.html](https://wpt.live/webauthn/securecontext.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/securecontext.https.html)]: `OK` [`GitHub`], `SKIP` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `OK`, Safari: `OK`) * [/secure-payment-confirmation/enrollment.https.html](https://wpt.live/secure-payment-confirmation/enrollment.https.html) [[wpt.fyi](https://wpt.fyi/results/secure-payment-confirmation/enrollment.https.html)]: `OK` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`], `TIMEOUT` [`Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`, `GitHub`] (Chrome: `OK`, Safari: `TIMEOUT`) * Payment credential is created successfully.: `FAIL` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `TIMEOUT` [`Gecko-linux1804-64-qr-opt`, `GitHub`] (Chrome: `PASS`, Safari: `TIMEOUT`) * Payment credential requires userVerification to be "required", not "preferred".: `FAIL` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-qr-debug`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `NOTRUN` [`Gecko-linux1804-64-qr-opt`, `GitHub`] (Chrome: `PASS`, Safari: `NOTRUN`) * Payment credential requires userVerification to be "required", not "discouraged".: `FAIL` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `NOTRUN` [`Gecko-linux1804-64-qr-opt`, `GitHub`], `TIMEOUT` [`Gecko-linux1804-64-qr-debug`] (Chrome: `PASS`, Safari: `NOTRUN`) * Payment credential requires residentKey to be "required", not "preferred".: `FAIL` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `NOTRUN` [`Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`] * Payment credential requires residentKey to be "required", not "discouraged".: `FAIL` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`], `NOTRUN` [`Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`] * Payment credential requires authenticatorAttachment to be "platform", not "cross-platform".: `FAIL` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`], `NOTRUN` [`Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `GitHub`], `TIMEOUT` [`Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`] (Chrome: `PASS`, Safari: `NOTRUN`) * Payment credential abort without reason: `NOTRUN` [`Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`, `GitHub`], `PASS` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`] (Chrome: `PASS`, Safari: `NOTRUN`) * Payment credential abort reason with Error: `FAIL` [`Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`], `NOTRUN` [`Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-windows10-32-2004-qr-debug`, `Gecko-windows10-32-2004-qr-opt`, `Gecko-windows10-64-2004-qr-debug`, `Gecko-windows10-64-2004-qr-opt`, `GitHub`] (Chrome: `FAIL`, Safari: `NOTRUN`) * Payment credential allows residentKey to be "preferred".: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * Payment credential does not allow residentKey to be "discouraged".: `NOTRUN` (Chrome: `PASS`, Safari: `NOTRUN`) * [/webauthn/conditional-mediation.https.html](https://wpt.live/webauthn/conditional-mediation.https.html) [[wpt.fyi](https://wpt.fyi/results/webauthn/conditional-mediation.https.html)] * Conditional mediation supported: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) * Conditional mediation not supported: `FAIL` (Chrome: `FAIL`, Safari: `FAIL`) (See attachment for full changes)
Whiteboard: [wptsync downstream error] → [wptsync downstream]
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6a72a028aa6b [wpt PR 35695] - Reland "webauthn: Update abort handling to take an abort reason", a=testonly https://hg.mozilla.org/integration/autoland/rev/43a411f46602 [wpt PR 35695] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 106 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: