WPT
wpt / digital-credentials / create.tentative.https.html
Spec: https://github.com/w3c-fedid/digital-credentials/ ↗
Runs: Chrome 155.0.8039.0 (wpt@a4fcd77aa, 2026-09-03) | Firefox 157.0a1 (wpt@cc4d45aa0, 2026-09-03) | Safari 251 preview (wpt@5ce815a83, 2026-08-27) | Ladybird 1.0-a9df8 (wpt@47d833bbc, 2026-09-03) | Servo Servo 0.6 (wpt@09159dcb3, 2026-09-02) | Blitz 188486089 (wpt@a95401e4e, 2026-09-02)
View on the Blitz WPT dashboard | Open test on wpt.live | wpt.fyi
| Chrome | Firefox | Safari | Ladybird | Servo | Blitz | |
|---|---|---|---|---|---|---|
| Total | 18/18 | 5/18 | 5/18 | 0/18 | 1/18 | NOT RUN |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| Calling navigator.credentials.create() without a digital member same origin. | PASS | PASS | PASS | FAIL | FAIL | — |
| navigator.credentials.create() API rejects if there are no credential request. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| navigator.credentials.create() API rejects if there are no credential request for same-origin iframe. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| navigator.credentials.create() API rejects if there are no credential request in cross-origin iframe. | PASS | FAIL | FAIL | FAIL | PASS | — |
| navigator.credentials.create() promise is rejected if called with an aborted controller. | PASS | PASS | PASS | FAIL | FAIL | — |
| navigator.credentials.create() promise is rejected if called with an aborted controller in same-origin iframe. | PASS | PASS | PASS | FAIL | FAIL | — |
| navigator.credentials.create() promise is rejected if called with an aborted signal in cross-origin iframe. | PASS | PASS | PASS | FAIL | FAIL | — |
| navigator.credentials.create() promise is rejected if abort controller is aborted after call to create(). | PASS | FAIL | FAIL | FAIL | FAIL | — |
| navigator.credentials.create() promise is rejected if abort controller is aborted after call to create() in cross-origin iframe. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| Mediation is implicitly required and hence ignored. Request is aborted regardless. | PASS | PASS | PASS | FAIL | FAIL | — |
| `requests` field is required in the options object. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| Throws TypeError when request data is not JSON stringifiable. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| Throws when form element does not contain password. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| navigator.credentials.create() with one unknown protocol with malformed data and one known protocol with proper data should skip the unknown one and not fail. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| All unsupported protocols filtered results in TypeError. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| Multiple unsupported protocols all filtered results in TypeError. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| Valid 'openid4vci' protocol passes through filtering. | PASS | FAIL | FAIL | FAIL | FAIL | — |
| Mix of valid and invalid protocols - valid survives filtering. | PASS | FAIL | FAIL | FAIL | FAIL | — |