Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(420)

Unified Diff: third_party/WebKit/LayoutTests/external/wpt/credential-management/credentialscontainer-create-basics.https.html

Issue 2884703002: Implement CredentialsContainer::create (Closed)
Patch Set: RaisesException Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/external/wpt/credential-management/idl.https.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/LayoutTests/external/wpt/credential-management/credentialscontainer-create-basics.https.html
diff --git a/third_party/WebKit/LayoutTests/external/wpt/credential-management/credentialscontainer-create-basics.https.html b/third_party/WebKit/LayoutTests/external/wpt/credential-management/credentialscontainer-create-basics.https.html
new file mode 100644
index 0000000000000000000000000000000000000000..cf4ac063e98ce3279f4d3f84de2fda413db7c21c
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/external/wpt/credential-management/credentialscontainer-create-basics.https.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<title>Credential Management API: create() basics.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+promise_test(function(t) {
+ return promise_rejects(t, "NotSupportedError",
+ navigator.credentials.create());
+}, "navigator.credentials.create() with no argument.");
+
+promise_test(function(t) {
+ return promise_rejects(t, "NotSupportedError",
+ navigator.credentials.create({}));
+}, "navigator.credentials.create() with empty argument.");
+
+promise_test(function(t) {
+ var credential_data = {
+ id: 'id',
+ password: 'pencil',
+ };
+
+ return navigator.credentials.create({password: credential_data})
+ .then(function(credential) {
+ assert_equals(credential.id, 'id');
+ assert_equals(credential.name, '');
+ assert_equals(credential.iconURL, '');
+ assert_equals(credential.type, 'password');
+ // TODO(jdoerrie): Add checks for 'credential.password'.
+ });
+}, "navigator.credentials.create() with valid PasswordCredentialData");
+
+promise_test(function(t) {
+ var f = document.createElement('form');
+ f.innerHTML = "<input type='text' name='theId' value='musterman' autocomplete='username'>"
+ + "<input type='text' name='thePassword' value='sekrit' autocomplete='current-password'>"
+ + "<input type='text' name='theIcon' value='https://example.com/photo' autocomplete='photo'>"
+ + "<input type='text' name='theExtraField' value='extra'>"
+ + "<input type='text' name='theName' value='friendly name' autocomplete='name'>";
+
+ return navigator.credentials.create({password: f})
+ .then(function(credential) {
+ assert_equals(credential.id, 'musterman');
+ assert_equals(credential.name, 'friendly name');
+ assert_equals(credential.iconURL, 'https://example.com/photo');
+ assert_equals(credential.type, 'password');
+ });
+}, "navigator.credentials.create() with valid HTMLFormElement");
+
+promise_test(function(t) {
+ return promise_rejects(t, new TypeError(),
+ navigator.credentials.create({password: "bogus password data"}));
+}, "navigator.credentials.create() with bogus password data");
+
+promise_test(function(t) {
+ var federated_data = {
+ id: 'id',
+ provider: 'https://example.com/',
+ };
+
+ return navigator.credentials.create({federated: federated_data})
+ .then(function(credential) {
+ assert_equals(credential.id, 'id');
+ assert_equals(credential.name, '');
+ assert_equals(credential.iconURL, '');
+ assert_equals(credential.type, 'federated');
+ });
+}, "navigator.credentials.create() with valid FederatedCredentialData");
+
+promise_test(function(t) {
+ return promise_rejects(t, new TypeError(),
+ navigator.credentials.create({federated: "bogus federated data"}));
+}, "navigator.credentials.create() with bogus federated data");
+
+promise_test(function(t) {
+ var credential_data = {
+ id: 'id',
+ password: 'pencil',
+ };
+
+ var federated_data = {
+ id: 'id',
+ provider: 'https://example.com/',
+ };
+
+ return promise_rejects(t, "NotSupportedError",
+ navigator.credentials.create({
+ password: credential_data,
+ federated: federated_data,
+ }));
+}, "navigator.credentials.create() with both PasswordCredentialData and FederatedCredentialData");
+
+promise_test(function(t) {
+ return promise_rejects(t, new TypeError(),
+ navigator.credentials.create({
+ password: "bogus password data",
+ federated: "bogus federated data",
+ }));
+}, "navigator.credentials.create() with bogus password and federated data");
+
+promise_test(function(t) {
+ return promise_rejects(t, "NotSupportedError",
+ navigator.credentials.create({bogus_key: "bogus data"}));
+}, "navigator.credentials.create() with bogus data");
+</script>
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/external/wpt/credential-management/idl.https.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698