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

Side by Side Diff: third_party/WebKit/LayoutTests/http/tests/credentialmanager/credentialscontainer-create-basics.html

Issue 2884703002: Implement CredentialsContainer::create (Closed)
Patch Set: Address comments 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 unified diff | Download patch
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <title>Credential Manager: create() basics.</title>
3 <script src="../resources/testharness.js"></script>
4 <script src="../resources/testharnessreport.js"></script>
5 <script src="/serviceworker/resources/interfaces.js"></script>
6 <script>
7 (function() {
Mike West 2017/05/17 06:57:57 You don't need this wrapper, here or elsewhere.
jdoerrie 2017/05/17 11:29:09 Done.
8 promise_test(function(t) {
9 return promise_rejects(t, "NotSupportedError",
10 navigator.credentials.create());
11 }, "navigator.credentials.create() with no argument.");
12 }());
13
14 (function() {
15 promise_test(function(t) {
16 return promise_rejects(t, "NotSupportedError",
17 navigator.credentials.create({}));
Mike West 2017/05/17 06:57:57 Please add a test for `{password: { /* invalid pas
jdoerrie 2017/05/17 11:29:09 Done.
18 }, "navigator.credentials.create() with empty argument.");
19 }());
20
21 (function() {
22 promise_test(function(t) {
23 var credential_data = {
24 id: 'id',
25 password: 'pencil',
26 };
27
28 return navigator.credentials.create({password: credential_data})
29 .then(function(credential) {
30 assert_equals(credential.id, 'id');
31 assert_equals(credential.name, '');
32 assert_equals(credential.iconURL, '');
33 assert_equals(credential.type, 'password');
34 assert_equals(credential.idName, 'username');
35 assert_equals(credential.passwordName, 'password');
Mike West 2017/05/17 06:57:57 Since this test doesn't rely on the internal mocks
jdoerrie 2017/05/17 08:53:22 Sound good :) Just to make sure I understand you c
36 assert_equals(credential.additionalData, null);
37 });
38 }, "navigator.credentials.create() with valid PasswordCredentialData");
39 }());
40
41 (function() {
42 promise_test(function(t) {
43 var f = document.createElement('form');
44 f.innerHTML = "<input type='text' name='theId' value='musterman' autocom plete='username'>"
45 + "<input type='text' name='thePassword' value='sekrit' autocomplete ='current-password'>"
46 + "<input type='text' name='theIcon' value='https://example.com/phot o' autocomplete='photo'>"
47 + "<input type='text' name='theExtraField' value='extra'>"
48 + "<input type='text' name='theName' value='friendly name' autocompl ete='name'>";
49
50 return navigator.credentials.create({password: f})
51 .then(function(credential) {
52 assert_equals(credential.id, 'musterman');
53 assert_equals(credential.name, 'friendly name');
54 assert_equals(credential.iconURL, 'https://example.com/photo');
55 assert_equals(credential.idName, 'theId');
56 assert_equals(credential.passwordName, 'thePassword');
57 assert_equals(credential.type, 'password');
58
59 assert_equals(credential.additionalData.get('theId'), 'musterman ');
60 assert_equals(credential.additionalData.get('thePassword'), 'sek rit');
61 assert_equals(credential.additionalData.get('theIcon'),
62 'https://example.com/photo');
63 assert_equals(credential.additionalData.get('theName'), 'friendl y name');
64 assert_equals(credential.additionalData.get('theExtraField'), 'e xtra');
65 });
66 }, "navigator.credentials.create() with valid HTMLFormElement");
67 }());
68
69 (function() {
70 promise_test(function(t) {
71 return promise_rejects(t, new TypeError(),
72 navigator.credentials.create({password: "bogus password data"})) ;
73 }, "navigator.credentials.create() with bogus password data");
74 }());
75
76 (function() {
77 promise_test(function(t) {
78 var federated_data = {
79 id: 'id',
80 provider: 'https://example.com/',
81 };
82
83 return navigator.credentials.create({federated: federated_data})
84 .then(function(credential) {
85 assert_equals(credential.id, 'id');
86 assert_equals(credential.name, '');
87 assert_equals(credential.iconURL, '');
88 assert_equals(credential.type, 'federated');
89 });
90 }, "navigator.credentials.create() with valid FederatedCredentialData");
91 }());
92
93 (function() {
94 promise_test(function(t) {
95 return promise_rejects(t, new TypeError(),
96 navigator.credentials.create({federated: "bogus federated data"} ));
97 }, "navigator.credentials.create() with bogus federated data");
98 }());
99
100 (function() {
101 promise_test(function(t) {
102 var credential_data = {
103 id: 'id',
104 password: 'pencil',
105 };
106
107 var federated_data = {
108 id: 'id',
109 provider: 'https://example.com/',
110 };
111
112 return promise_rejects(t, "NotSupportedError",
113 navigator.credentials.create({password: credential_data,
114 federated: federated_data}));
115 }, "navigator.credentials.create() with both PasswordCredentialData and Fede ratedCredentialData");
116 }());
117 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698