Closed Bug 1872308 Opened 1 year ago Closed 1 year ago

[wpt-sync] Sync PR 43820 - webauthn: implement PublicKeyCredential.parseCreationOptionsFromJSON()

Categories

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

task

Tracking

()

RESOLVED FIXED
123 Branch
Tracking Status
firefox123 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

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

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

Martin Kreichgauer <martinkr@google.com> wrote:

webauthn: implement PublicKeyCredential.parseCreationOptionsFromJSON()

This adds IDL, implementation and WPT for a method that parses a
PublicKeyCredentialCreationOptions from an equivalent JSON type. Flag
guarded by the existing WebAuthenticationJSONSerialization runtime flag.

Spec: https://w3c.github.io/webauthn/#sctn-parseCreationOptionsFromJSON

Bug: 1401128
Change-Id: Id7140d93774d39bbd51185fdb8c66448e0b1a629
Reviewed-on: https://chromium-review.googlesource.com/5155353
WPT-Export-Revision: 2d8e0526d017d6de15922fc060d73aae8a75cb12

Component: web-platform-tests → DOM: Web Authentication
Product: Testing → Core

CI Results

Ran 0 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 41 tests and 1 subtests

Status Summary

Firefox

OK : 41
PASS : 290
FAIL : 50

Chrome

OK : 41
PASS : 331
FAIL : 9

Safari

OK : 37
PASS : 231
FAIL : 81
TIMEOUT: 8
NOTRUN : 24

Links

GitHub PR Head
GitHub PR Base

Details

Firefox-only Failures

  • /webauthn/createcredential-pubkeycredparams.https.html [wpt.fyi]
    • Bad pubKeyCredParams: first param has bad type ("something-else"): FAIL
    • Bad pubKeyCredParams: first param has bad type (""): FAIL
    • Bad pubKeyCredParams: first param has bad type (null): FAIL
    • Bad pubKeyCredParams: first param has bad type (empty object): FAIL

New Tests That Don't Pass

  • /secure-payment-confirmation/enrollment.https.html [wpt.fyi]
    • Payment credential is created successfully.: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • Payment credential allows residentKey to be "preferred".: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Payment credential requires userVerification to be "required", not "preferred".: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Payment credential requires userVerification to be "required", not "discouraged".: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Payment credential does not allow residentKey to be "discouraged".: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Payment credential requires authenticatorAttachment to be "platform", not "cross-platform".: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /webauthn/createcredential-extensions.https.html [wpt.fyi]
    • navigator.credentials.create() with prf requested but no support in authenticator: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/createcredential-large-blob-not-supported.https.html [wpt.fyi]
    • navigator.credentials.create() with largeBlob.write set: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.create() with largeBlob.read set: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.create() with largeBlob.support set to preferred and not supported by authenticator: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.create() with largeBlob.support not set and not supported by authenticator: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.create() with largeBlob.support set to required and not supported by authenticator: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/createcredential-large-blob-supported.https.html [wpt.fyi]
    • navigator.credentials.create() with largeBlob.support set to preferred and supported by authenticator: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.create() with largeBlob.support not set and supported by authenticator: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.create() with largeBlob.support set to required and supported by authenticator: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/createcredential-prf.https.html [wpt.fyi]
    • navigator.credentials.create() with prf requested: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.create() with nonsensical evalByCredential: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.create() with eval: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/createcredential-pubkeycredparams.https.html [wpt.fyi]
    • Bad pubKeyCredParams: first param has bad type ("something-else"): FAIL (Chrome: PASS, Safari: PASS)
    • Bad pubKeyCredParams: first param has bad type (""): FAIL (Chrome: PASS, Safari: PASS)
    • Bad pubKeyCredParams: first param has bad type (null): FAIL (Chrome: PASS, Safari: PASS)
    • Bad pubKeyCredParams: first param has bad type (empty object): FAIL (Chrome: PASS, Safari: PASS)
  • /webauthn/createcredential-resident-key.https.html [wpt.fyi]
    • CTAP 2.0 with resident key support: navigator.credentials.create() with credProps extension, rk=discouraged: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /webauthn/credblob-not-supported.https.html [wpt.fyi]
    • creation requesting credBlob without authenticator support: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/credblob-supported.https.html [wpt.fyi]
    • assertion without credBlob: FAIL (Chrome: PASS, Safari: FAIL)
    • assertion with credBlob: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/getcredential-extensions.https.html [wpt.fyi]
    • Payment extension is only supported at registration: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with prf requested but no support in authenticator: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/getcredential-large-blob-not-supported.https.html [wpt.fyi]
    • navigator.credentials.get() with largeBlob.support set: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with largeBlob.read and largeBlob.write set: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with largeBlob.read set without authenticator support: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with largeBlob.write set without authenticator support: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/getcredential-large-blob-supported.https.html [wpt.fyi]
    • navigator.credentials.get() with largeBlob.read set with no blob on authenticator: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() read and write blob: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/getcredential-prf.https.html [wpt.fyi]
    • navigator.credentials.get() with single evaluation point: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with two equal evaluation points: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with two distinct evaluation points: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() using credential ID with one evaluation point: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() using credential ID with two evaluation points: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with credential ID not in allowedCredentials: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with Uint8Array credential ID not in allowedCredentials: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() using invalid base64url credential ID: FAIL (Chrome: PASS, Safari: FAIL)
    • navigator.credentials.get() with an empty allow list but also using evalByCredential: FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/idlharness.https.window.html [wpt.fyi]
    • PublicKeyCredential interface: operation isPasskeyPlatformAuthenticatorAvailable(): FAIL (Chrome: FAIL, Safari: FAIL)
    • AuthenticatorAssertionResponse interface: attribute attestationObject: FAIL (Chrome: FAIL, Safari: FAIL)
  • /webauthn/public-key-credential-creation-options-from-json.https.window.html [wpt.fyi]
    • parseCreationOptionsFromJSON(): FAIL (Chrome: FAIL, Safari: FAIL)
    • parseCreationOptionsFromJSON() with extensions: FAIL (Chrome: FAIL, Safari: FAIL)
  • /webauthn/public-key-credential-to-json.https.window.html [wpt.fyi]
    • toJSON(): FAIL (Chrome: PASS, Safari: FAIL)
  • /webauthn/remote-desktop-client-override.tentative.https.html [wpt.fyi]
    • create() with remoteDesktopClientOverride: FAIL (Chrome: FAIL, Safari: FAIL)
    • get() with remoteDesktopClientOverride on an unauthorized site: FAIL (Chrome: FAIL, Safari: FAIL)
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2bd52251ad3a [wpt PR 43820] - webauthn: implement PublicKeyCredential.parseCreationOptionsFromJSON(), a=testonly https://hg.mozilla.org/integration/autoland/rev/5e6ab2882cdb [wpt PR 43820] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 123 Branch
You need to log in before you can comment on or make changes to this bug.