Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / crypto / hmac-generateKey-parseAlgorithm-failures.html
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <script src="../resources/js-test.js"></script>
5 <script src="resources/common.js"></script>
6 </head>
7 <body>
8 <p id="description"></p>
9 <div id="console"></div>
10
11 <script>
12 description("Tests generateKey() with bad HMAC parameters.");
13 jsTestIsAsync = true;
14
15 extractable = true;
16 keyUsages = ['sign', 'verify'];
17
18 Promise.resolve(null).then(function() {
19     return crypto.subtle.generateKey({name: 'hmac', hash: {name: 'sha-256'}, length: -3}, extractable , keyUsages);
20 }).then(failAndFinishJSTest, function(result) {
21     logError(result);
22
23     return crypto.subtle.generateKey({name: 'hmac', hash: {name: ''}, length: 48}, extractable , keyUsages);
24 }).then(failAndFinishJSTest, function(result) {
25     logError(result);
26
27     return crypto.subtle.generateKey({name: 'hmac', hash: {name: 'sha-256'}, length: 5000000000}, extractable , keyUsages);
28 }).then(failAndFinishJSTest, function(result) {
29     logError(result);
30
31     return crypto.subtle.generateKey({name: 'hmac', hash: {name: 'sha-256'}, length: NaN}, extractable , keyUsages);
32 }).then(failAndFinishJSTest, function(result) {
33     logError(result);
34
35     return crypto.subtle.generateKey({name: 'hmac', hash: {name: 'sha-256'}, length: Infinity}, extractable , keyUsages);
36 }).then(failAndFinishJSTest, function(result) {
37     logError(result);
38
39     return crypto.subtle.generateKey({name: 'hmac', hash: {name: 'sha-256'}, length: -Infinity}, extractable , keyUsages);
40 }).then(failAndFinishJSTest, function(result) {
41     logError(result);
42
43     return crypto.subtle.generateKey({name: 'hmac', hash: {name: 'sha-256'}, length: crypto}, extractable , keyUsages);
44 }).then(failAndFinishJSTest, function(result) {
45     logError(result);
46
47     return crypto.subtle.generateKey({name: 'hmac', hash: {name: 'sha-256'}, length: undefined}, extractable , keyUsages);
48 }).then(failAndFinishJSTest, function(result) {
49     logError(result);
50
51     return crypto.subtle.generateKey({name: 'hmac', hash: {name: 'sha-256'}, length: true}, extractable , keyUsages);
52 }).then(failAndFinishJSTest, function(result) {
53     logError(result);
54 }).then(finishJSTest, failAndFinishJSTest);
55
56 </script>
57
58 </body>
59 </html>