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

Side by Side Diff: chrome/browser/ui/website_settings/website_settings_unittest.cc

Issue 10831108: mac: Fix a few compile errors with the 10.8 SDK (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 4 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/ui/website_settings/website_settings.h" 5 #include "chrome/browser/ui/website_settings/website_settings.h"
6 6
7 #include "base/at_exit.h" 7 #include "base/at_exit.h"
8 #include "base/message_loop.h" 8 #include "base/message_loop.h"
9 #include "base/string16.h" 9 #include "base/string16.h"
10 #include "base/utf_string_conversions.h" 10 #include "base/utf_string_conversions.h"
(...skipping 13 matching lines...) Expand all
24 #include "net/base/x509_certificate.h" 24 #include "net/base/x509_certificate.h"
25 #include "testing/gmock/include/gmock/gmock.h" 25 #include "testing/gmock/include/gmock/gmock.h"
26 #include "testing/gtest/include/gtest/gtest.h" 26 #include "testing/gtest/include/gtest/gtest.h"
27 27
28 using content::SSLStatus; 28 using content::SSLStatus;
29 using namespace testing; 29 using namespace testing;
30 30
31 namespace { 31 namespace {
32 32
33 // SSL cipher suite like specified in RFC5246 Appendix A.5. "The Cipher Suite". 33 // SSL cipher suite like specified in RFC5246 Appendix A.5. "The Cipher Suite".
34 static int TLS_RSA_WITH_AES_256_CBC_SHA256 = 0x3D; 34 // Without the CR_ prefix, this clashes with the OS X 10.8 headers.
35 int CR_TLS_RSA_WITH_AES_256_CBC_SHA256 = 0x3D;
35 36
36 int SetSSLVersion(int connection_status, int version) { 37 int SetSSLVersion(int connection_status, int version) {
37 // Clear SSL version bits (Bits 20, 21 and 22). 38 // Clear SSL version bits (Bits 20, 21 and 22).
38 connection_status &= 39 connection_status &=
39 ~(net::SSL_CONNECTION_VERSION_MASK << net::SSL_CONNECTION_VERSION_SHIFT); 40 ~(net::SSL_CONNECTION_VERSION_MASK << net::SSL_CONNECTION_VERSION_SHIFT);
40 int bitmask = version << net::SSL_CONNECTION_VERSION_SHIFT; 41 int bitmask = version << net::SSL_CONNECTION_VERSION_SHIFT;
41 return bitmask | connection_status; 42 return bitmask | connection_status;
42 } 43 }
43 44
44 int SetSSLCipherSuite(int connection_status, int cipher_suite) { 45 int SetSSLCipherSuite(int connection_status, int cipher_suite) {
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
215 EXPECT_EQ(string16(), website_settings()->organization_name()); 216 EXPECT_EQ(string16(), website_settings()->organization_name());
216 } 217 }
217 218
218 TEST_F(WebsiteSettingsTest, HTTPSConnection) { 219 TEST_F(WebsiteSettingsTest, HTTPSConnection) {
219 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; 220 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED;
220 ssl_.cert_id = cert_id(); 221 ssl_.cert_id = cert_id();
221 ssl_.cert_status = 0; 222 ssl_.cert_status = 0;
222 ssl_.security_bits = 81; // No error if > 80. 223 ssl_.security_bits = 81; // No error if > 80.
223 int status = 0; 224 int status = 0;
224 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); 225 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1);
225 status = SetSSLCipherSuite(status, TLS_RSA_WITH_AES_256_CBC_SHA256); 226 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256);
226 ssl_.connection_status = status; 227 ssl_.connection_status = status;
227 228
228 SetDefaultUIExpectations(mock_ui()); 229 SetDefaultUIExpectations(mock_ui());
229 230
230 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED, 231 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED,
231 website_settings()->site_connection_status()); 232 website_settings()->site_connection_status());
232 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, 233 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT,
233 website_settings()->site_identity_status()); 234 website_settings()->site_identity_status());
234 EXPECT_EQ(string16(), website_settings()->organization_name()); 235 EXPECT_EQ(string16(), website_settings()->organization_name());
235 } 236 }
236 237
237 TEST_F(WebsiteSettingsTest, HTTPSMixedContent) { 238 TEST_F(WebsiteSettingsTest, HTTPSMixedContent) {
238 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; 239 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED;
239 ssl_.cert_id = cert_id(); 240 ssl_.cert_id = cert_id();
240 ssl_.cert_status = 0; 241 ssl_.cert_status = 0;
241 ssl_.security_bits = 81; // No error if > 80. 242 ssl_.security_bits = 81; // No error if > 80.
242 ssl_.content_status = SSLStatus::DISPLAYED_INSECURE_CONTENT; 243 ssl_.content_status = SSLStatus::DISPLAYED_INSECURE_CONTENT;
243 int status = 0; 244 int status = 0;
244 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); 245 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1);
245 status = SetSSLCipherSuite(status, TLS_RSA_WITH_AES_256_CBC_SHA256); 246 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256);
246 ssl_.connection_status = status; 247 ssl_.connection_status = status;
247 248
248 SetDefaultUIExpectations(mock_ui()); 249 SetDefaultUIExpectations(mock_ui());
249 250
250 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_CONTENT, 251 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_CONTENT,
251 website_settings()->site_connection_status()); 252 website_settings()->site_connection_status());
252 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, 253 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT,
253 website_settings()->site_identity_status()); 254 website_settings()->site_identity_status());
254 EXPECT_EQ(string16(), website_settings()->organization_name()); 255 EXPECT_EQ(string16(), website_settings()->organization_name());
255 } 256 }
256 257
257 TEST_F(WebsiteSettingsTest, HTTPSEVCert) { 258 TEST_F(WebsiteSettingsTest, HTTPSEVCert) {
258 scoped_refptr<net::X509Certificate> ev_cert = 259 scoped_refptr<net::X509Certificate> ev_cert =
259 net::X509Certificate::CreateFromBytes( 260 net::X509Certificate::CreateFromBytes(
260 reinterpret_cast<const char*>(google_der), 261 reinterpret_cast<const char*>(google_der),
261 sizeof(google_der)); 262 sizeof(google_der));
262 int ev_cert_id = 1; 263 int ev_cert_id = 1;
263 EXPECT_CALL(*cert_store(), RetrieveCert(ev_cert_id, _)).WillRepeatedly( 264 EXPECT_CALL(*cert_store(), RetrieveCert(ev_cert_id, _)).WillRepeatedly(
264 DoAll(SetArgPointee<1>(ev_cert), Return(true))); 265 DoAll(SetArgPointee<1>(ev_cert), Return(true)));
265 266
266 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; 267 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED;
267 ssl_.cert_id = ev_cert_id; 268 ssl_.cert_id = ev_cert_id;
268 ssl_.cert_status = net::CERT_STATUS_IS_EV; 269 ssl_.cert_status = net::CERT_STATUS_IS_EV;
269 ssl_.security_bits = 81; // No error if > 80. 270 ssl_.security_bits = 81; // No error if > 80.
270 ssl_.content_status = SSLStatus::DISPLAYED_INSECURE_CONTENT; 271 ssl_.content_status = SSLStatus::DISPLAYED_INSECURE_CONTENT;
271 int status = 0; 272 int status = 0;
272 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); 273 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1);
273 status = SetSSLCipherSuite(status, TLS_RSA_WITH_AES_256_CBC_SHA256); 274 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256);
274 ssl_.connection_status = status; 275 ssl_.connection_status = status;
275 276
276 SetDefaultUIExpectations(mock_ui()); 277 SetDefaultUIExpectations(mock_ui());
277 278
278 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_CONTENT, 279 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_CONTENT,
279 website_settings()->site_connection_status()); 280 website_settings()->site_connection_status());
280 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_EV_CERT, 281 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_EV_CERT,
281 website_settings()->site_identity_status()); 282 website_settings()->site_identity_status());
282 EXPECT_EQ(UTF8ToUTF16("Google Inc"), website_settings()->organization_name()); 283 EXPECT_EQ(UTF8ToUTF16("Google Inc"), website_settings()->organization_name());
283 } 284 }
284 285
285 TEST_F(WebsiteSettingsTest, HTTPSRevocationError) { 286 TEST_F(WebsiteSettingsTest, HTTPSRevocationError) {
286 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; 287 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED;
287 ssl_.cert_id = cert_id(); 288 ssl_.cert_id = cert_id();
288 ssl_.cert_status = net::CERT_STATUS_UNABLE_TO_CHECK_REVOCATION; 289 ssl_.cert_status = net::CERT_STATUS_UNABLE_TO_CHECK_REVOCATION;
289 ssl_.security_bits = 81; // No error if > 80. 290 ssl_.security_bits = 81; // No error if > 80.
290 int status = 0; 291 int status = 0;
291 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); 292 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1);
292 status = SetSSLCipherSuite(status, TLS_RSA_WITH_AES_256_CBC_SHA256); 293 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256);
293 ssl_.connection_status = status; 294 ssl_.connection_status = status;
294 295
295 SetDefaultUIExpectations(mock_ui()); 296 SetDefaultUIExpectations(mock_ui());
296 297
297 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED, 298 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED,
298 website_settings()->site_connection_status()); 299 website_settings()->site_connection_status());
299 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT_REVOCATION_UNKNOWN, 300 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT_REVOCATION_UNKNOWN,
300 website_settings()->site_identity_status()); 301 website_settings()->site_identity_status());
301 EXPECT_EQ(string16(), website_settings()->organization_name()); 302 EXPECT_EQ(string16(), website_settings()->organization_name());
302 } 303 }
303 304
304 TEST_F(WebsiteSettingsTest, HTTPSConnectionError) { 305 TEST_F(WebsiteSettingsTest, HTTPSConnectionError) {
305 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; 306 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED;
306 ssl_.cert_id = cert_id(); 307 ssl_.cert_id = cert_id();
307 ssl_.cert_status = 0; 308 ssl_.cert_status = 0;
308 ssl_.security_bits = 1; 309 ssl_.security_bits = 1;
309 int status = 0; 310 int status = 0;
310 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); 311 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1);
311 status = SetSSLCipherSuite(status, TLS_RSA_WITH_AES_256_CBC_SHA256); 312 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256);
312 ssl_.connection_status = status; 313 ssl_.connection_status = status;
313 314
314 SetDefaultUIExpectations(mock_ui()); 315 SetDefaultUIExpectations(mock_ui());
315 316
316 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED_ERROR, 317 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED_ERROR,
317 website_settings()->site_connection_status()); 318 website_settings()->site_connection_status());
318 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, 319 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT,
319 website_settings()->site_identity_status()); 320 website_settings()->site_identity_status());
320 EXPECT_EQ(string16(), website_settings()->organization_name()); 321 EXPECT_EQ(string16(), website_settings()->organization_name());
321 } 322 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698