Bug 1429171 - Enable portions of the Credential Management WPTs r?jgraham
While Web Authentication's work didn't intend to implement all of Credential
Management, it implemented parts, and as such has made some of the WPTs for
CredMan pass. I've filed
Bug 1429196 to get the other applicable tests to pass
(e.g., not the PasswordCredential or FederatedCredential tests, which we
currently don't plan to support).
Note that this doesn't meaningfully affect the Web Authentication WPTs, but
those are still basically stubs that time out immediately.
MozReview-Commit-ID: HuVa5bYDI7V
--- a/testing/web-platform/meta/credential-management/credentialscontainer-create-basics.https.html.ini
+++ b/testing/web-platform/meta/credential-management/credentialscontainer-create-basics.https.html.ini
@@ -1,47 +1,28 @@
[credentialscontainer-create-basics.https.html]
type: testharness
+ prefs: [security.webauth.webauthn: true]
+
[navigator.credentials.create() with no argument.]
expected: FAIL
[navigator.credentials.create() with empty argument.]
expected: FAIL
[navigator.credentials.create() with valid PasswordCredentialData]
expected: FAIL
[navigator.credentials.create() with valid HTMLFormElement]
expected: FAIL
- [navigator.credentials.create() with bogus password data]
- expected: FAIL
-
[navigator.credentials.create() with valid FederatedCredentialData]
expected: FAIL
- [navigator.credentials.create() with bogus federated data]
- expected: FAIL
-
[navigator.credentials.create() with both PasswordCredentialData and FederatedCredentialData]
expected: FAIL
- [navigator.credentials.create() with bogus password and federated data]
- expected: FAIL
-
[navigator.credentials.create() with bogus data]
expected: FAIL
- [navigator.credentials.create() with bogus publicKey data]
- expected: FAIL
-
[navigator.credentials.create() returns PublicKeyCredential]
expected: FAIL
- [navigator.credentials.create() with bogus federated and publicKey data]
- expected: FAIL
-
- [navigator.credentials.create() with bogus password and publicKey data]
- expected: FAIL
-
- [navigator.credentials.create() with bogus password, federated, and publicKey data]
- expected: FAIL
-
--- a/testing/web-platform/meta/credential-management/idl.https.html.ini
+++ b/testing/web-platform/meta/credential-management/idl.https.html.ini
@@ -1,52 +1,15 @@
[idl.https.html]
type: testharness
- [CredentialsContainer interface: existence and properties of interface object]
- expected: FAIL
-
- [CredentialsContainer interface object length]
- expected: FAIL
-
- [CredentialsContainer interface object name]
- expected: FAIL
-
- [CredentialsContainer interface: existence and properties of interface prototype object]
- expected: FAIL
-
- [CredentialsContainer interface: existence and properties of interface prototype object's "constructor" property]
- expected: FAIL
-
- [CredentialsContainer interface: operation get(CredentialRequestOptions)]
- expected: FAIL
-
- [CredentialsContainer interface: operation store(Credential)]
- expected: FAIL
+ prefs: [security.webauth.webauthn: true]
[CredentialsContainer interface: operation requireUserMediation()]
expected: FAIL
- [CredentialsContainer must be primary interface of navigator.credentials]
- expected: FAIL
-
- [Stringification of navigator.credentials]
- expected: FAIL
-
- [CredentialsContainer interface: navigator.credentials must inherit property "get" with the proper type (0)]
- expected: FAIL
-
- [CredentialsContainer interface: calling get(CredentialRequestOptions) on navigator.credentials with too few arguments must throw TypeError]
- expected: FAIL
-
- [CredentialsContainer interface: navigator.credentials must inherit property "store" with the proper type (1)]
- expected: FAIL
-
- [CredentialsContainer interface: calling store(Credential) on navigator.credentials with too few arguments must throw TypeError]
- expected: FAIL
-
[CredentialsContainer interface: navigator.credentials must inherit property "requireUserMediation" with the proper type (2)]
expected: FAIL
[PasswordCredential interface: existence and properties of interface object]
expected: FAIL
[PasswordCredential interface object length]
expected: FAIL
@@ -136,46 +99,28 @@
expected: FAIL
[Credential interface: new FederatedCredential({ id: "id", provider: "https://example.com", iconURL: "https://example.com/", name: "name" }) must inherit property "id" with the proper type (0)]
expected: FAIL
[Credential interface: new FederatedCredential({ id: "id", provider: "https://example.com", iconURL: "https://example.com/", name: "name" }) must inherit property "type" with the proper type (1)]
expected: FAIL
- [CredentialsContainer interface: operation create(CredentialCreationOptions)]
- expected: FAIL
-
[CredentialsContainer interface: operation preventSilentAccess()]
expected: FAIL
- [CredentialsContainer interface: navigator.credentials must inherit property "create" with the proper type (2)]
- expected: FAIL
-
- [CredentialsContainer interface: calling create(CredentialCreationOptions) on navigator.credentials with too few arguments must throw TypeError]
- expected: FAIL
-
[CredentialsContainer interface: navigator.credentials must inherit property "preventSilentAccess" with the proper type (3)]
expected: FAIL
[PasswordCredential interface: attribute password]
expected: FAIL
[PasswordCredential interface: new PasswordCredential({ id: "id", password: "pencil", iconURL: "https://example.com/", name: "name" }) must inherit property "password" with the proper type (0)]
expected: FAIL
- [CredentialsContainer interface: navigator.credentials must inherit property "get(CredentialRequestOptions)" with the proper type]
- expected: FAIL
-
- [CredentialsContainer interface: navigator.credentials must inherit property "store(Credential)" with the proper type]
- expected: FAIL
-
- [CredentialsContainer interface: navigator.credentials must inherit property "create(CredentialCreationOptions)" with the proper type]
- expected: FAIL
-
[CredentialsContainer interface: navigator.credentials must inherit property "preventSilentAccess()" with the proper type]
expected: FAIL
[PasswordCredential interface: new PasswordCredential({ id: "id", password: "pencil", iconURL: "https://example.com/", name: "name" }) must inherit property "password" with the proper type]
expected: FAIL
[FederatedCredential interface: new FederatedCredential({ id: "id", provider: "https://example.com", iconURL: "https://example.com/", name: "name" }) must inherit property "provider" with the proper type]
expected: FAIL
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/meta/webauthn/__dir__.ini
@@ -0,0 +1,1 @@
+prefs: [security.webauth.webauthn:true]