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

Side by Side Diff: content/child/webcrypto/test/ecdh_unittest.cc

Issue 816403002: [WebCrypto] Cleanup in LoadTestKeys() in ecdh unit tests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years 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
OLDNEW
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/jwk.h" 8 #include "content/child/webcrypto/jwk.h"
9 #include "content/child/webcrypto/status.h" 9 #include "content/child/webcrypto/status.h"
10 #include "content/child/webcrypto/test/test_helpers.h" 10 #include "content/child/webcrypto/test/test_helpers.h"
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 121
122 EXPECT_EQ(CryptoData(expected_bytes), CryptoData(derived_bytes)); 122 EXPECT_EQ(CryptoData(expected_bytes), CryptoData(derived_bytes));
123 } 123 }
124 } 124 }
125 125
126 // Loads up a test ECDH public and private key for P-521. The keys 126 // Loads up a test ECDH public and private key for P-521. The keys
127 // come from different key pairs, and can be used for key derivation of up to 127 // come from different key pairs, and can be used for key derivation of up to
128 // 528 bits. 128 // 528 bits.
129 void LoadTestKeys(blink::WebCryptoKey* public_key, 129 void LoadTestKeys(blink::WebCryptoKey* public_key,
130 blink::WebCryptoKey* private_key) { 130 blink::WebCryptoKey* private_key) {
131 // Assume that the 7th key in the test data is for P-521.
132 scoped_ptr<base::ListValue> tests; 131 scoped_ptr<base::ListValue> tests;
133 ASSERT_TRUE(ReadJsonTestFileToList("ecdh.json", &tests)); 132 ASSERT_TRUE(ReadJsonTestFileToList("ecdh.json", &tests));
134 133
135 const base::DictionaryValue* test; 134 const base::DictionaryValue* test;
eroman 2014/12/22 17:56:07 This does not handle the case where the property i
Habib Virji 2014/12/23 10:59:05 I have added now, assert failure if it fails to fi
136 ASSERT_TRUE(tests->GetDictionary(6, &test)); 135 for (size_t test_index = 0; test_index < tests->GetSize(); ++test_index) {
136 SCOPED_TRACE(test_index);
137 ASSERT_TRUE(tests->GetDictionary(test_index, &test));
138 int result = 0;
139 test->GetInteger("load_p521_test_keys", &result);
140 if (result)
141 break;
142 }
137 143
138 ImportKeysFromTest(test, public_key, private_key); 144 ImportKeysFromTest(test, public_key, private_key);
139 145
140 ASSERT_EQ(blink::WebCryptoNamedCurveP521, 146 ASSERT_EQ(blink::WebCryptoNamedCurveP521,
141 public_key->algorithm().ecParams()->namedCurve()); 147 public_key->algorithm().ecParams()->namedCurve());
142 } 148 }
143 149
144 // Try deriving an AES key of length 129 bits. 150 // Try deriving an AES key of length 129 bits.
145 TEST(WebCryptoEcdhTest, DeriveKeyBadAesLength) { 151 TEST(WebCryptoEcdhTest, DeriveKeyBadAesLength) {
146 if (!SupportsEcdh()) 152 if (!SupportsEcdh())
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 CryptoData(MakeJsonVector(*private_key_json)), 354 CryptoData(MakeJsonVector(*private_key_json)),
349 CreateEcdhImportAlgorithm(curve), true, 355 CreateEcdhImportAlgorithm(curve), true,
350 0, &key)); 356 0, &key));
351 } 357 }
352 358
353 } // namespace 359 } // namespace
354 360
355 } // namespace webcrypto 361 } // namespace webcrypto
356 362
357 } // namespace content 363 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | content/test/data/webcrypto/ecdh.json » ('j') | content/test/data/webcrypto/ecdh.json » ('J')

Powered by Google App Engine
This is Rietveld 408576698