Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <title>Credential Manager: FederatedCredential basics.</title> | 2 <title>Credential Manager: FederatedCredential basics.</title> |
| 3 <script src="../resources/testharness.js"></script> | 3 <script src="../resources/testharness.js"></script> |
| 4 <script src="../resources/testharnessreport.js"></script> | 4 <script src="../resources/testharnessreport.js"></script> |
| 5 <script src="resources/interfaces.js"></script> | 5 <script src="/w3c/resources/WebIDLParser.js"></script> |
| 6 <script src="/w3c/resources/idlharness.js"></script> | |
| 7 <script type="text/plain" id="tested"> | |
| 8 [Exposed=Window, SecureContext] | |
| 9 interface Credential { | |
| 10 readonly attribute USVString id; | |
| 11 readonly attribute DOMString type; | |
| 12 }; | |
| 13 | |
| 14 [NoInterfaceObject, SecureContext] | |
| 15 interface CredentialUserData { | |
| 16 readonly attribute USVString name; | |
| 17 readonly attribute USVString iconURL; | |
| 18 }; | |
| 19 | |
| 20 dictionary CredentialData { | |
| 21 required USVString id; | |
| 22 }; | |
| 23 | |
| 24 dictionary FederatedCredentialInit : CredentialData { | |
| 25 USVString name; | |
| 26 USVString iconURL; | |
| 27 required USVString provider; | |
| 28 DOMString protocol; | |
| 29 }; | |
| 30 | |
| 31 [Constructor(FederatedCredentialInit data), | |
| 32 Exposed=Window, | |
| 33 SecureContext] | |
| 34 interface FederatedCredential : Credential { | |
| 35 readonly attribute USVString provider; | |
| 36 readonly attribute DOMString? protocol; | |
| 37 }; | |
| 38 FederatedCredential implements CredentialUserData; | |
| 39 </script> | |
| 6 <script> | 40 <script> |
| 41 var idl_array = new IdlArray(); | |
| 42 idl_array.add_idls(document.querySelector('#tested').textContent); | |
| 43 idl_array.add_objects({ | |
| 44 FederatedCredential: [ | |
| 45 'new FederatedCredential({ id: "id", provider: "http://federation.test" })' | |
| 46 ] | |
| 47 }); | |
| 48 idl_array.test(); | |
|
Mike West
2017/05/29 12:10:38
Likewise.
mike3
2017/05/29 17:41:12
Done.
| |
| 49 | |
| 7 test(function() { | 50 test(function() { |
| 8 var credential = new FederatedCredential({ | 51 var credential = new FederatedCredential({ |
| 9 'id': 'id', | 52 'id': 'id', |
| 10 'provider': 'https://federation.test/', | 53 'provider': 'https://federation.test/', |
| 11 'name': 'name', | 54 'name': 'name', |
| 12 'iconURL': 'https://example.test/icon.png' | 55 'iconURL': 'https://example.test/icon.png' |
| 13 }); | 56 }); |
| 14 | 57 |
| 15 assert_true(credential instanceof Credential); | |
| 16 assert_true(credential instanceof FederatedCredential); | |
| 17 | |
| 18 verify_interface('FederatedCredential', credential, { | |
| 19 id: 'string', | |
| 20 name: 'string', | |
| 21 iconURL: 'string', | |
| 22 provider: 'string', | |
| 23 type: 'string' | |
| 24 }); | |
| 25 | |
| 26 assert_equals(credential.id, 'id'); | 58 assert_equals(credential.id, 'id'); |
| 27 assert_equals(credential.name, 'name'); | 59 assert_equals(credential.name, 'name'); |
| 28 assert_equals(credential.iconURL, 'https://example.test/icon.png'); | 60 assert_equals(credential.iconURL, 'https://example.test/icon.png'); |
| 29 assert_equals(credential.provider, 'https://federation.test'); | 61 assert_equals(credential.provider, 'https://federation.test'); |
| 30 assert_equals(credential.type, 'federated'); | 62 assert_equals(credential.type, 'federated'); |
| 31 }, 'Interfaces and attributes of FederatedCredential'); | 63 }, 'Interfaces and attributes of FederatedCredential'); |
| 32 | 64 |
| 33 test(function() { | 65 test(function() { |
| 34 var credential = new FederatedCredential({ | 66 var credential = new FederatedCredential({ |
| 35 'id': 'id', | 67 'id': 'id', |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 106 assert_throws(new TypeError(), | 138 assert_throws(new TypeError(), |
| 107 () => { new FederatedCredential({ 'provider': '' }); }); | 139 () => { new FederatedCredential({ 'provider': '' }); }); |
| 108 assert_throws(new TypeError(), | 140 assert_throws(new TypeError(), |
| 109 () => { new FederatedCredential({ 'id': undefined, 'provider': undefined }); }); | 141 () => { new FederatedCredential({ 'id': undefined, 'provider': undefined }); }); |
| 110 assert_throws(new TypeError(), | 142 assert_throws(new TypeError(), |
| 111 () => { new FederatedCredential({ 'id': undefined, 'provider': '' }); }); | 143 () => { new FederatedCredential({ 'id': undefined, 'provider': '' }); }); |
| 112 assert_throws(new TypeError(), | 144 assert_throws(new TypeError(), |
| 113 () => { new FederatedCredential({ 'id': undefined, 'provider': undefined }); }); | 145 () => { new FederatedCredential({ 'id': undefined, 'provider': undefined }); }); |
| 114 }, 'FederatedCredential objects require IDs and Providers'); | 146 }, 'FederatedCredential objects require IDs and Providers'); |
| 115 </script> | 147 </script> |
| OLD | NEW |