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

Side by Side Diff: LayoutTests/crypto/digest.html

Issue 141413003: [webcrypto] Match the error handling defined by the spec. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase Created 6 years, 11 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | LayoutTests/crypto/digest-expected.txt » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <head> 3 <head>
4 <script src="../resources/js-test.js"></script> 4 <script src="../resources/js-test.js"></script>
5 <script src="resources/common.js"></script> 5 <script src="resources/common.js"></script>
6 </head> 6 </head>
7 <body> 7 <body>
8 <p id="description"></p> 8 <p id="description"></p>
9 <div id="console"></div> 9 <div id="console"></div>
10 10
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 input: "000102030405", 91 input: "000102030405",
92 output: "79f4738706fce9650ac60266675c3cd07298b09923850d525604d040e6e448adc7d c22780d7e1b95bfeaa86a678e4552" 92 output: "79f4738706fce9650ac60266675c3cd07298b09923850d525604d040e6e448adc7d c22780d7e1b95bfeaa86a678e4552"
93 }, 93 },
94 { 94 {
95 algorithm: "SHA-512", 95 algorithm: "SHA-512",
96 input: "000102030405", 96 input: "000102030405",
97 output: "2f3831bccc94cf061bcfa5f8c23c1429d26e3bc6b76edad93d9025cb91c903af6cf 9c935dc37193c04c2c66e7d9de17c358284418218afea2160147aaa912f4c" 97 output: "2f3831bccc94cf061bcfa5f8c23c1429d26e3bc6b76edad93d9025cb91c903af6cf 9c935dc37193c04c2c66e7d9de17c358284418218afea2160147aaa912f4c"
98 }, 98 },
99 ]; 99 ];
100 100
101 var allTests = [];
102
103 // Run each test. 101 // Run each test.
104 for (var i = 0; i < kDigestTestVectors.length; ++i) { 102 for (var i = 0; i < kDigestTestVectors.length; ++i) {
105 allTests.push(runTestCase(kDigestTestVectors[i])); 103 addTask(runTestCase(kDigestTestVectors[i]));
106 } 104 }
107 105
108 function runTestCase(testCase) 106 function runTestCase(testCase)
109 { 107 {
110 return crypto.subtle.digest({name: testCase.algorithm}, hexStringToUint8Arra y(testCase.input)).then(function(result) { 108 return crypto.subtle.digest({name: testCase.algorithm}, hexStringToUint8Arra y(testCase.input)).then(function(result) {
111 var testDescription = testCase.algorithm + " of [" + testCase.input + "] "; 109 var testDescription = testCase.algorithm + " of [" + testCase.input + "] ";
112 bytesShouldMatchHexString(testDescription, testCase.output, result); 110 bytesShouldMatchHexString(testDescription, testCase.output, result);
113 }); 111 });
114 } 112 }
115 113
116 Promise.all(allTests).then(finishJSTest, failAndFinishJSTest); 114 // Pass invalid data to digest()
117
118 // Pass invalid data to digeset()
119 shouldThrow("crypto.subtle.digest({name: 'sha-1'})"); 115 shouldThrow("crypto.subtle.digest({name: 'sha-1'})");
120 shouldThrow("crypto.subtle.digest({name: 'sha-1'}, null)"); 116 shouldThrow("crypto.subtle.digest({name: 'sha-1'}, null)");
121 shouldThrow("crypto.subtle.digest({name: 'sha-1'}, 10)"); 117 shouldThrow("crypto.subtle.digest({name: 'sha-1'}, 10)");
122 118
123 // Pass invalid algorithmIdentifiers to digest() 119 // Pass invalid algorithmIdentifiers to digest()
124 data = new Uint8Array([0]); 120 data = new Uint8Array([0]);
125 shouldThrow("crypto.subtle.digest({name: 'sha'}, data)"); 121 shouldThrow("crypto.subtle.digest({name: 'sha'}, data)");
126 shouldThrow("crypto.subtle.digest(null, data)"); 122 shouldThrow("crypto.subtle.digest(null, data)");
127 shouldThrow("crypto.subtle.digest({}, data)"); 123 shouldThrow("crypto.subtle.digest({}, data)");
128 124
125 completeTestWhenAllTasksDone();
126
129 </script> 127 </script>
130 128
131 </body> 129 </body>
132 </html> 130 </html>
OLDNEW
« no previous file with comments | « no previous file | LayoutTests/crypto/digest-expected.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698