| OLD | NEW | 
|    1 // Copyright 2014 The Chromium Authors. All rights reserved. |    1 // Copyright 2014 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #include "base/stl_util.h" |    5 #include "base/stl_util.h" | 
|    6 #include "content/child/webcrypto/algorithm_dispatch.h" |    6 #include "content/child/webcrypto/algorithm_dispatch.h" | 
|    7 #include "content/child/webcrypto/crypto_data.h" |    7 #include "content/child/webcrypto/crypto_data.h" | 
|    8 #include "content/child/webcrypto/status.h" |    8 #include "content/child/webcrypto/status.h" | 
|    9 #include "content/child/webcrypto/test/test_helpers.h" |    9 #include "content/child/webcrypto/test/test_helpers.h" | 
|   10 #include "content/child/webcrypto/webcrypto_util.h" |   10 #include "content/child/webcrypto/webcrypto_util.h" | 
| (...skipping 11 matching lines...) Expand all  Loading... | 
|   22   return CreateAesKeyGenAlgorithm(blink::WebCryptoAlgorithmIdAesKw, |   22   return CreateAesKeyGenAlgorithm(blink::WebCryptoAlgorithmIdAesKw, | 
|   23                                   key_length_bits); |   23                                   key_length_bits); | 
|   24 } |   24 } | 
|   25  |   25  | 
|   26 TEST(WebCryptoAesKwTest, GenerateKeyBadLength) { |   26 TEST(WebCryptoAesKwTest, GenerateKeyBadLength) { | 
|   27   const unsigned short kKeyLen[] = {0, 127, 257}; |   27   const unsigned short kKeyLen[] = {0, 127, 257}; | 
|   28   blink::WebCryptoKey key; |   28   blink::WebCryptoKey key; | 
|   29   for (size_t i = 0; i < arraysize(kKeyLen); ++i) { |   29   for (size_t i = 0; i < arraysize(kKeyLen); ++i) { | 
|   30     SCOPED_TRACE(i); |   30     SCOPED_TRACE(i); | 
|   31     EXPECT_EQ(Status::ErrorGenerateAesKeyLength(), |   31     EXPECT_EQ(Status::ErrorGenerateAesKeyLength(), | 
|   32               GenerateSecretKey(CreateAesKwKeyGenAlgorithm(kKeyLen[i]), true, 0, |   32               GenerateSecretKey(CreateAesKwKeyGenAlgorithm(kKeyLen[i]), true, | 
|   33                                 &key)); |   33                   blink::WebCryptoKeyUsageWrapKey, &key)); | 
|   34   } |   34   } | 
|   35 } |   35 } | 
|   36  |   36  | 
|   37 TEST(WebCryptoAesKwTest, GenerateKeyEmptyUsage) { |   37 TEST(WebCryptoAesKwTest, GenerateKeyEmptyUsage) { | 
|   38   blink::WebCryptoKey key; |   38   blink::WebCryptoKey key; | 
|   39   EXPECT_EQ(Status::ErrorCreateKeyEmptyUsages(), |   39   EXPECT_EQ(Status::ErrorCreateKeyEmptyUsages(), | 
|   40             GenerateSecretKey(CreateAesKwKeyGenAlgorithm(256), true, 0, &key)); |   40             GenerateSecretKey(CreateAesKwKeyGenAlgorithm(256), true, 0, &key)); | 
|   41 } |   41 } | 
|   42  |   42  | 
 |   43 TEST(WebCryptoAesKwTest, ImportKeyEmptyUsage) { | 
 |   44   blink::WebCryptoKey key; | 
 |   45   EXPECT_EQ(Status::ErrorCreateKeyEmptyUsages(), | 
 |   46             ImportKey(blink::WebCryptoKeyFormatRaw, | 
 |   47                       CryptoData(std::vector<uint8_t>(16)), | 
 |   48                       CreateAlgorithm(blink::WebCryptoAlgorithmIdAesKw), | 
 |   49                       true, 0, &key)); | 
 |   50 } | 
 |   51  | 
|   43 TEST(WebCryptoAesKwTest, ImportKeyJwkKeyOpsWrapUnwrap) { |   52 TEST(WebCryptoAesKwTest, ImportKeyJwkKeyOpsWrapUnwrap) { | 
|   44   blink::WebCryptoKey key; |   53   blink::WebCryptoKey key; | 
|   45   base::DictionaryValue dict; |   54   base::DictionaryValue dict; | 
|   46   dict.SetString("kty", "oct"); |   55   dict.SetString("kty", "oct"); | 
|   47   dict.SetString("k", "GADWrMRHwQfoNaXU5fZvTg"); |   56   dict.SetString("k", "GADWrMRHwQfoNaXU5fZvTg"); | 
|   48   base::ListValue* key_ops = new base::ListValue; |   57   base::ListValue* key_ops = new base::ListValue; | 
|   49   dict.Set("key_ops", key_ops);  // Takes ownership. |   58   dict.Set("key_ops", key_ops);  // Takes ownership. | 
|   50  |   59  | 
|   51   key_ops->AppendString("wrapKey"); |   60   key_ops->AppendString("wrapKey"); | 
|   52  |   61  | 
| (...skipping 469 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  522                             blink::WebCryptoAlgorithmIdSha256), |  531                             blink::WebCryptoAlgorithmIdSha256), | 
|  523                         true, bad_usages[i], &key)); |  532                         true, bad_usages[i], &key)); | 
|  524   } |  533   } | 
|  525 } |  534 } | 
|  526  |  535  | 
|  527 }  // namespace |  536 }  // namespace | 
|  528  |  537  | 
|  529 }  // namespace webcrypto |  538 }  // namespace webcrypto | 
|  530  |  539  | 
|  531 }  // namespace content |  540 }  // namespace content | 
| OLD | NEW |