4 <script src=
"../../../resources/js-test.js"></script>
5 <script src=
"../resources/common.js"></script>
8 <p id=
"description"></p>
9 <div id=
"console"></div>
12 description("Tests generateKey() with bad AES-CBC parameters.");
16 keyUsages
= ['encrypt', 'decrypt'];
18 Promise
.resolve(null).then(function() {
19 debug("\ngenerateKey() with invalid keyUsages value that is -1...");
20 return crypto
.subtle
.generateKey({ name
: 'aes-cbc', length
: 1024 }, extractable
, -1);
21 }).then(failAndFinishJSTest
, function(result
) {
24 debug("\ngenerateKey() with invalid keyUsages value that is null...");
25 return crypto
.subtle
.generateKey({ name
: 'aes-cbc', length
: 1024 }, extractable
, null);
26 }).then(failAndFinishJSTest
, function(result
) {
29 debug("\ngenerateKey() with an invalid key usage of 'boo'...");
30 return crypto
.subtle
.generateKey({ name
: 'aes-cbc', length
: 1024 }, extractable
, ['boo']);
31 }).then(failAndFinishJSTest
, function(result
) {
34 debug("\ngenerateKey() without length...");
35 return crypto
.subtle
.generateKey({ name
: 'aes-cbc' }, extractable
, keyUsages
);
36 }).then(failAndFinishJSTest
, function(result
) {
39 debug("\ngenerateKey() with a length of 70000...");
40 return crypto
.subtle
.generateKey({ name
: 'aes-cbc', length
: 70000 }, extractable
, keyUsages
);
41 }).then(failAndFinishJSTest
, function(result
) {
44 debug("\ngenerateKey() with a length of -3...");
45 return crypto
.subtle
.generateKey({ name
: 'aes-cbc', length
: -3 }, extractable
, keyUsages
);
46 }).then(failAndFinishJSTest
, function(result
) {
49 debug("\ngenerateKey() with length that is minus Infinity...");
50 return crypto
.subtle
.generateKey({ name
: 'aes-cbc', length
: -Infinity
}, extractable
, keyUsages
);
51 }).then(failAndFinishJSTest
, function(result
) {
53 }).then(finishJSTest
, failAndFinishJSTest
);