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

Unified Diff: content/child/webcrypto/test/hmac_unittest.cc

Issue 745443002: Check that usage isn't empty when generateKey() is called (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add more tests Created 6 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: content/child/webcrypto/test/hmac_unittest.cc
diff --git a/content/child/webcrypto/test/hmac_unittest.cc b/content/child/webcrypto/test/hmac_unittest.cc
index d57116c01bd83d5cc454d7fae96995b43a0614db..171991dfe9948d23131a0728409b525f01d7d904 100644
--- a/content/child/webcrypto/test/hmac_unittest.cc
+++ b/content/child/webcrypto/test/hmac_unittest.cc
@@ -121,7 +121,9 @@ TEST(WebCryptoHmacTest, GenerateKeyIsRandom) {
blink::WebCryptoKey key;
blink::WebCryptoAlgorithm algorithm =
CreateHmacKeyGenAlgorithm(blink::WebCryptoAlgorithmIdSha1, 512);
- ASSERT_EQ(Status::Success(), GenerateSecretKey(algorithm, true, 0, &key));
+ ASSERT_EQ(
+ Status::Success(),
+ GenerateSecretKey(algorithm, true, blink::WebCryptoKeyUsageSign, &key));
EXPECT_FALSE(key.isNull());
EXPECT_TRUE(key.handle());
EXPECT_EQ(blink::WebCryptoKeyTypeSecret, key.type());
@@ -146,7 +148,9 @@ TEST(WebCryptoHmacTest, GenerateKeyNoLengthSha1) {
blink::WebCryptoKey key;
blink::WebCryptoAlgorithm algorithm =
CreateHmacKeyGenAlgorithm(blink::WebCryptoAlgorithmIdSha1, 0);
- ASSERT_EQ(Status::Success(), GenerateSecretKey(algorithm, true, 0, &key));
+ ASSERT_EQ(
+ Status::Success(),
+ GenerateSecretKey(algorithm, true, blink::WebCryptoKeyUsageSign, &key));
EXPECT_TRUE(key.handle());
EXPECT_EQ(blink::WebCryptoKeyTypeSecret, key.type());
EXPECT_EQ(blink::WebCryptoAlgorithmIdHmac, key.algorithm().id());
@@ -164,7 +168,9 @@ TEST(WebCryptoHmacTest, GenerateKeyNoLengthSha512) {
blink::WebCryptoKey key;
blink::WebCryptoAlgorithm algorithm =
CreateHmacKeyGenAlgorithm(blink::WebCryptoAlgorithmIdSha512, 0);
- ASSERT_EQ(Status::Success(), GenerateSecretKey(algorithm, true, 0, &key));
+ ASSERT_EQ(
+ Status::Success(),
+ GenerateSecretKey(algorithm, true, blink::WebCryptoKeyUsageSign, &key));
EXPECT_EQ(blink::WebCryptoAlgorithmIdHmac, key.algorithm().id());
EXPECT_EQ(blink::WebCryptoAlgorithmIdSha512,
key.algorithm().hmacParams()->hash().id());
@@ -175,6 +181,15 @@ TEST(WebCryptoHmacTest, GenerateKeyNoLengthSha512) {
EXPECT_EQ(128U, raw_key.size());
}
+TEST(WebCryptoHmacTest, GenerateKeyEmptyUsage) {
+ blink::WebCryptoKey key;
+ blink::WebCryptoAlgorithm algorithm =
+ CreateHmacKeyGenAlgorithm(blink::WebCryptoAlgorithmIdSha512, 0);
+ ASSERT_EQ(
+ Status::ErrorCreateKeyBadUsages(),
+ GenerateSecretKey(algorithm, true, 0, &key));
+}
+
TEST(WebCryptoHmacTest, ImportKeyJwkKeyOpsSignVerify) {
blink::WebCryptoKey key;
base::DictionaryValue dict;

Powered by Google App Engine
This is Rietveld 408576698