Bug 1429171 - Enable portions of the Credential Management WPTs r?jgraham draft
authorJ.C. Jones <jjones@mozilla.com>
Tue, 09 Jan 2018 12:53:01 -0700
changeset 717964 02704b01e0f6024ffdcf6976d1e7dc102981c5e7
parent 717738 6f5fac320fcb6625603fa8a744ffa8523f8b3d71
child 745392 52bbf930fb2cbeaff9317cb5586526e8cc6fdb43
push id94825
push userbmo:jjones@mozilla.com
push dateTue, 09 Jan 2018 21:00:56 +0000
reviewersjgraham
bugs1429171, 1429196
milestone59.0a1
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
testing/web-platform/meta/credential-management/credentialscontainer-create-basics.https.html.ini
testing/web-platform/meta/credential-management/idl.https.html.ini
testing/web-platform/meta/webauthn/__dir__.ini
--- 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]