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

Side by Side Diff: third_party/boringssl/boringssl_unittest.cc

Issue 862133002: Update from https://crrev.com/312398 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 11 months 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 <stdarg.h> 5 #include <stdarg.h>
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/base_paths.h" 9 #include "base/base_paths.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 bool BoringSSLPath(base::FilePath* result) { 49 bool BoringSSLPath(base::FilePath* result) {
50 if (!PathService::Get(base::DIR_SOURCE_ROOT, result)) 50 if (!PathService::Get(base::DIR_SOURCE_ROOT, result))
51 return false; 51 return false;
52 52
53 *result = result->Append(FILE_PATH_LITERAL("third_party")); 53 *result = result->Append(FILE_PATH_LITERAL("third_party"));
54 *result = result->Append(FILE_PATH_LITERAL("boringssl")); 54 *result = result->Append(FILE_PATH_LITERAL("boringssl"));
55 *result = result->Append(FILE_PATH_LITERAL("src")); 55 *result = result->Append(FILE_PATH_LITERAL("src"));
56 return true; 56 return true;
57 } 57 }
58 58
59 bool CryptoCipherPath(base::FilePath *result) { 59 bool CryptoCipherTestPath(base::FilePath *result) {
60 if (!BoringSSLPath(result)) 60 if (!BoringSSLPath(result))
61 return false; 61 return false;
62 62
63 *result = result->Append(FILE_PATH_LITERAL("crypto")); 63 *result = result->Append(FILE_PATH_LITERAL("crypto"));
64 *result = result->Append(FILE_PATH_LITERAL("cipher")); 64 *result = result->Append(FILE_PATH_LITERAL("cipher"));
65 *result = result->Append(FILE_PATH_LITERAL("test"));
65 return true; 66 return true;
66 } 67 }
67 68
68 } // anonymous namespace 69 } // anonymous namespace
69 70
70 TEST(BoringSSL, AES128GCM) { 71 struct AEADTest {
71 base::FilePath data_file; 72 const base::CommandLine::CharType *name;
72 ASSERT_TRUE(CryptoCipherPath(&data_file)); 73 const base::FilePath::CharType *test_vector_filename;
73 data_file = data_file.Append(FILE_PATH_LITERAL("aes_128_gcm_tests.txt")); 74 };
74 75
75 std::vector<base::CommandLine::StringType> args; 76 static const AEADTest kAEADTests[] = {
76 args.push_back(FILE_PATH_LITERAL("aes-128-gcm")); 77 {FILE_PATH_LITERAL("aes-128-gcm"),
77 args.push_back(data_file.value()); 78 FILE_PATH_LITERAL("aes_128_gcm_tests.txt")},
79 {FILE_PATH_LITERAL("aes-128-key-wrap"),
80 FILE_PATH_LITERAL("aes_128_key_wrap_tests.txt")},
81 {FILE_PATH_LITERAL("aes-256-gcm"),
82 FILE_PATH_LITERAL("aes_256_gcm_tests.txt")},
83 {FILE_PATH_LITERAL("aes-256-key-wrap"),
84 FILE_PATH_LITERAL("aes_256_key_wrap_tests.txt")},
85 {FILE_PATH_LITERAL("chacha20-poly1305"),
86 FILE_PATH_LITERAL("chacha20_poly1305_tests.txt")},
87 {FILE_PATH_LITERAL("rc4-md5-tls"),
88 FILE_PATH_LITERAL("rc4_md5_tls_tests.txt")},
89 {FILE_PATH_LITERAL("rc4-sha1-tls"),
90 FILE_PATH_LITERAL("rc4_sha1_tls_tests.txt")},
91 {FILE_PATH_LITERAL("aes-128-cbc-sha1-tls"),
92 FILE_PATH_LITERAL("aes_128_cbc_sha1_tls_tests.txt")},
93 {FILE_PATH_LITERAL("aes-128-cbc-sha1-tls-implicit-iv"),
94 FILE_PATH_LITERAL("aes_128_cbc_sha1_tls_implicit_iv_tests.txt")},
95 {FILE_PATH_LITERAL("aes-128-cbc-sha256-tls"),
96 FILE_PATH_LITERAL("aes_128_cbc_sha256_tls_tests.txt")},
97 {FILE_PATH_LITERAL("aes-256-cbc-sha1-tls"),
98 FILE_PATH_LITERAL("aes_256_cbc_sha1_tls_tests.txt")},
99 {FILE_PATH_LITERAL("aes-256-cbc-sha1-tls-implicit-iv"),
100 FILE_PATH_LITERAL("aes_256_cbc_sha1_tls_implicit_iv_tests.txt")},
101 {FILE_PATH_LITERAL("aes-256-cbc-sha256-tls"),
102 FILE_PATH_LITERAL("aes_256_cbc_sha256_tls_tests.txt")},
103 {FILE_PATH_LITERAL("aes-256-cbc-sha384-tls"),
104 FILE_PATH_LITERAL("aes_256_cbc_sha384_tls_tests.txt")},
105 {FILE_PATH_LITERAL("des-ede3-cbc-sha1-tls"),
106 FILE_PATH_LITERAL("des_ede3_cbc_sha1_tls_tests.txt")},
107 {FILE_PATH_LITERAL("des-ede3-cbc-sha1-tls-implicit-iv"),
108 FILE_PATH_LITERAL("des_ede3_cbc_sha1_tls_implicit_iv_tests.txt")},
109 {FILE_PATH_LITERAL("rc4-md5-ssl3"),
110 FILE_PATH_LITERAL("rc4_md5_ssl3_tests.txt")},
111 {FILE_PATH_LITERAL("rc4-sha1-ssl3"),
112 FILE_PATH_LITERAL("rc4_sha1_ssl3_tests.txt")},
113 {FILE_PATH_LITERAL("aes-128-cbc-sha1-ssl3"),
114 FILE_PATH_LITERAL("aes_128_cbc_sha1_ssl3_tests.txt")},
115 {FILE_PATH_LITERAL("aes-256-cbc-sha1-ssl3"),
116 FILE_PATH_LITERAL("aes_256_cbc_sha1_ssl3_tests.txt")},
117 {FILE_PATH_LITERAL("des-ede3-cbc-sha1-ssl3"),
118 FILE_PATH_LITERAL("des_ede3_cbc_sha1_ssl3_tests.txt")},
119 };
78 120
79 TestProcess("aead_test", args); 121 TEST(BoringSSL, AEADs) {
80 } 122 base::FilePath test_vector_dir;
123 ASSERT_TRUE(CryptoCipherTestPath(&test_vector_dir));
81 124
82 TEST(BoringSSL, AES256GCM) { 125 for (size_t i = 0; i < arraysize(kAEADTests); i++) {
83 base::FilePath data_file; 126 const AEADTest& test = kAEADTests[i];
84 ASSERT_TRUE(CryptoCipherPath(&data_file)); 127 SCOPED_TRACE(test.name);
85 data_file = data_file.Append(FILE_PATH_LITERAL("aes_256_gcm_tests.txt"));
86 128
87 std::vector<base::CommandLine::StringType> args; 129 base::FilePath test_vector_file =
88 args.push_back(FILE_PATH_LITERAL("aes-256-gcm")); 130 test_vector_dir.Append(test.test_vector_filename);
89 args.push_back(data_file.value());
90 131
91 TestProcess("aead_test", args); 132 std::vector<base::CommandLine::StringType> args;
92 } 133 args.push_back(test.name);
134 args.push_back(test_vector_file.value());
93 135
94 TEST(BoringSSL, ChaCha20Poly1305) { 136 TestProcess("aead_test", args);
95 base::FilePath data_file; 137 }
96 ASSERT_TRUE(CryptoCipherPath(&data_file));
97 data_file =
98 data_file.Append(FILE_PATH_LITERAL("chacha20_poly1305_tests.txt"));
99
100 std::vector<base::CommandLine::StringType> args;
101 args.push_back(FILE_PATH_LITERAL("chacha20-poly1305"));
102 args.push_back(data_file.value());
103
104 TestProcess("aead_test", args);
105 }
106
107 TEST(BoringSSL, RC4MD5) {
108 base::FilePath data_file;
109 ASSERT_TRUE(CryptoCipherPath(&data_file));
110 data_file = data_file.Append(FILE_PATH_LITERAL("rc4_md5_tests.txt"));
111
112 std::vector<base::CommandLine::StringType> args;
113 args.push_back(FILE_PATH_LITERAL("rc4-md5"));
114 args.push_back(data_file.value());
115
116 TestProcess("aead_test", args);
117 }
118
119 TEST(BoringSSL, AESKW128) {
120 base::FilePath data_file;
121 ASSERT_TRUE(CryptoCipherPath(&data_file));
122 data_file = data_file.Append(FILE_PATH_LITERAL("aes_128_key_wrap_tests.txt"));
123
124 std::vector<base::CommandLine::StringType> args;
125 args.push_back(FILE_PATH_LITERAL("aes-128-key-wrap"));
126 args.push_back(data_file.value());
127
128 TestProcess("aead_test", args);
129 }
130
131 TEST(BoringSSL, AESKW256) {
132 base::FilePath data_file;
133 ASSERT_TRUE(CryptoCipherPath(&data_file));
134 data_file = data_file.Append(FILE_PATH_LITERAL("aes_256_key_wrap_tests.txt"));
135
136 std::vector<base::CommandLine::StringType> args;
137 args.push_back(FILE_PATH_LITERAL("aes-256-key-wrap"));
138 args.push_back(data_file.value());
139
140 TestProcess("aead_test", args);
141 } 138 }
142 139
143 TEST(BoringSSL, Base64) { 140 TEST(BoringSSL, Base64) {
144 TestSimple("base64_test"); 141 TestSimple("base64_test");
145 } 142 }
146 143
147 TEST(BoringSSL, BIO) { 144 TEST(BoringSSL, BIO) {
148 TestSimple("bio_test"); 145 TestSimple("bio_test");
149 } 146 }
150 147
151 TEST(BoringSSL, BN) { 148 TEST(BoringSSL, BN) {
152 TestSimple("bn_test"); 149 TestSimple("bn_test");
153 } 150 }
154 151
155 TEST(BoringSSL, ByteString) { 152 TEST(BoringSSL, ByteString) {
156 TestSimple("bytestring_test"); 153 TestSimple("bytestring_test");
157 } 154 }
158 155
159 TEST(BoringSSL, ConstantTime) { 156 TEST(BoringSSL, ConstantTime) {
160 TestSimple("constant_time_test"); 157 TestSimple("constant_time_test");
161 } 158 }
162 159
163 TEST(BoringSSL, Cipher) { 160 TEST(BoringSSL, Cipher) {
164 base::FilePath data_file; 161 base::FilePath data_file;
165 ASSERT_TRUE(CryptoCipherPath(&data_file)); 162 ASSERT_TRUE(CryptoCipherTestPath(&data_file));
166 data_file = data_file.Append(FILE_PATH_LITERAL("cipher_test.txt")); 163 data_file = data_file.Append(FILE_PATH_LITERAL("cipher_test.txt"));
167 164
168 std::vector<base::CommandLine::StringType> args; 165 std::vector<base::CommandLine::StringType> args;
169 args.push_back(data_file.value()); 166 args.push_back(data_file.value());
170 167
171 TestProcess("cipher_test", args); 168 TestProcess("cipher_test", args);
172 } 169 }
173 170
174 TEST(BoringSSL, DH) { 171 TEST(BoringSSL, DH) {
175 TestSimple("dh_test"); 172 TestSimple("dh_test");
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
231 TestSimple("ssl_test"); 228 TestSimple("ssl_test");
232 } 229 }
233 230
234 TEST(BoringSSL, PQueue) { 231 TEST(BoringSSL, PQueue) {
235 TestSimple("pqueue_test"); 232 TestSimple("pqueue_test");
236 } 233 }
237 234
238 TEST(BoringSSL, HKDF) { 235 TEST(BoringSSL, HKDF) {
239 TestSimple("hkdf_test"); 236 TestSimple("hkdf_test");
240 } 237 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698