OLD | NEW |
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/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
9 #include "base/strings/string16.h" | 9 #include "base/strings/string16.h" |
10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 | 72 |
73 class WebsiteSettingsTest : public ChromeRenderViewHostTestHarness { | 73 class WebsiteSettingsTest : public ChromeRenderViewHostTestHarness { |
74 public: | 74 public: |
75 WebsiteSettingsTest() : cert_id_(0), url_("http://www.example.com") {} | 75 WebsiteSettingsTest() : cert_id_(0), url_("http://www.example.com") {} |
76 | 76 |
77 ~WebsiteSettingsTest() override {} | 77 ~WebsiteSettingsTest() override {} |
78 | 78 |
79 void SetUp() override { | 79 void SetUp() override { |
80 ChromeRenderViewHostTestHarness::SetUp(); | 80 ChromeRenderViewHostTestHarness::SetUp(); |
81 // Setup stub SSLStatus. | 81 // Setup stub SSLStatus. |
82 ssl_.security_style = content::SECURITY_STYLE_UNAUTHENTICATED; | 82 security_info_.security_level = SecurityStateModel::NONE; |
83 | 83 |
84 // Create the certificate. | 84 // Create the certificate. |
85 cert_id_ = 1; | 85 cert_id_ = 1; |
86 base::Time start_date = base::Time::Now(); | 86 base::Time start_date = base::Time::Now(); |
87 base::Time expiration_date = base::Time::FromInternalValue( | 87 base::Time expiration_date = base::Time::FromInternalValue( |
88 start_date.ToInternalValue() + base::Time::kMicrosecondsPerWeek); | 88 start_date.ToInternalValue() + base::Time::kMicrosecondsPerWeek); |
89 cert_ = new net::X509Certificate("subject", | 89 cert_ = new net::X509Certificate("subject", |
90 "issuer", | 90 "issuer", |
91 start_date, | 91 start_date, |
92 expiration_date); | 92 expiration_date); |
(...skipping 23 matching lines...) Expand all Loading... |
116 EXPECT_CALL(*mock_ui, SetIdentityInfo(_)); | 116 EXPECT_CALL(*mock_ui, SetIdentityInfo(_)); |
117 EXPECT_CALL(*mock_ui, SetCookieInfo(_)); | 117 EXPECT_CALL(*mock_ui, SetCookieInfo(_)); |
118 } | 118 } |
119 | 119 |
120 void SetURL(std::string url) { url_ = GURL(url); } | 120 void SetURL(std::string url) { url_ = GURL(url); } |
121 | 121 |
122 const GURL& url() const { return url_; } | 122 const GURL& url() const { return url_; } |
123 MockCertStore* cert_store() { return &cert_store_; } | 123 MockCertStore* cert_store() { return &cert_store_; } |
124 int cert_id() { return cert_id_; } | 124 int cert_id() { return cert_id_; } |
125 MockWebsiteSettingsUI* mock_ui() { return mock_ui_.get(); } | 125 MockWebsiteSettingsUI* mock_ui() { return mock_ui_.get(); } |
126 const SSLStatus& ssl() { return ssl_; } | 126 const SecurityStateModel::SecurityInfo& security_info() { |
| 127 return security_info_; |
| 128 } |
127 TabSpecificContentSettings* tab_specific_content_settings() { | 129 TabSpecificContentSettings* tab_specific_content_settings() { |
128 return TabSpecificContentSettings::FromWebContents(web_contents()); | 130 return TabSpecificContentSettings::FromWebContents(web_contents()); |
129 } | 131 } |
130 InfoBarService* infobar_service() { | 132 InfoBarService* infobar_service() { |
131 return InfoBarService::FromWebContents(web_contents()); | 133 return InfoBarService::FromWebContents(web_contents()); |
132 } | 134 } |
133 | 135 |
134 WebsiteSettings* website_settings() { | 136 WebsiteSettings* website_settings() { |
135 if (!website_settings_.get()) { | 137 if (!website_settings_.get()) { |
136 website_settings_.reset(new WebsiteSettings( | 138 website_settings_.reset(new WebsiteSettings( |
137 mock_ui(), profile(), tab_specific_content_settings(), | 139 mock_ui(), profile(), tab_specific_content_settings(), web_contents(), |
138 web_contents(), url(), ssl(), cert_store())); | 140 url(), security_info(), cert_store())); |
139 } | 141 } |
140 return website_settings_.get(); | 142 return website_settings_.get(); |
141 } | 143 } |
142 | 144 |
143 SSLStatus ssl_; | 145 SecurityStateModel::SecurityInfo security_info_; |
144 | 146 |
145 private: | 147 private: |
146 scoped_ptr<WebsiteSettings> website_settings_; | 148 scoped_ptr<WebsiteSettings> website_settings_; |
147 scoped_ptr<MockWebsiteSettingsUI> mock_ui_; | 149 scoped_ptr<MockWebsiteSettingsUI> mock_ui_; |
148 int cert_id_; | 150 int cert_id_; |
149 scoped_refptr<net::X509Certificate> cert_; | 151 scoped_refptr<net::X509Certificate> cert_; |
150 MockCertStore cert_store_; | 152 MockCertStore cert_store_; |
151 GURL url_; | 153 GURL url_; |
152 }; | 154 }; |
153 | 155 |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
279 EXPECT_CALL(*mock_ui(), SetSelectedTab( | 281 EXPECT_CALL(*mock_ui(), SetSelectedTab( |
280 WebsiteSettingsUI::TAB_ID_PERMISSIONS)); | 282 WebsiteSettingsUI::TAB_ID_PERMISSIONS)); |
281 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_UNENCRYPTED, | 283 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_UNENCRYPTED, |
282 website_settings()->site_connection_status()); | 284 website_settings()->site_connection_status()); |
283 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_NO_CERT, | 285 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_NO_CERT, |
284 website_settings()->site_identity_status()); | 286 website_settings()->site_identity_status()); |
285 EXPECT_EQ(base::string16(), website_settings()->organization_name()); | 287 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
286 } | 288 } |
287 | 289 |
288 TEST_F(WebsiteSettingsTest, HTTPSConnection) { | 290 TEST_F(WebsiteSettingsTest, HTTPSConnection) { |
289 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; | 291 security_info_.security_level = SecurityStateModel::SECURE; |
290 ssl_.cert_id = cert_id(); | 292 security_info_.scheme_is_cryptographic = true; |
291 ssl_.cert_status = 0; | 293 security_info_.cert_id = cert_id(); |
292 ssl_.security_bits = 81; // No error if > 80. | 294 security_info_.cert_status = 0; |
| 295 security_info_.security_bits = 81; // No error if > 80. |
293 int status = 0; | 296 int status = 0; |
294 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); | 297 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
295 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); | 298 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); |
296 ssl_.connection_status = status; | 299 security_info_.connection_status = status; |
297 | 300 |
298 SetDefaultUIExpectations(mock_ui()); | 301 SetDefaultUIExpectations(mock_ui()); |
299 EXPECT_CALL(*mock_ui(), SetSelectedTab( | 302 EXPECT_CALL(*mock_ui(), SetSelectedTab( |
300 WebsiteSettingsUI::TAB_ID_PERMISSIONS)); | 303 WebsiteSettingsUI::TAB_ID_PERMISSIONS)); |
301 | 304 |
302 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED, | 305 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED, |
303 website_settings()->site_connection_status()); | 306 website_settings()->site_connection_status()); |
304 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, | 307 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, |
305 website_settings()->site_identity_status()); | 308 website_settings()->site_identity_status()); |
306 EXPECT_EQ(base::string16(), website_settings()->organization_name()); | 309 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
307 } | 310 } |
308 | 311 |
309 TEST_F(WebsiteSettingsTest, HTTPSPassiveMixedContent) { | 312 TEST_F(WebsiteSettingsTest, HTTPSPassiveMixedContent) { |
310 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; | 313 security_info_.security_level = SecurityStateModel::NONE; |
311 ssl_.cert_id = cert_id(); | 314 security_info_.scheme_is_cryptographic = true; |
312 ssl_.cert_status = 0; | 315 security_info_.cert_id = cert_id(); |
313 ssl_.security_bits = 81; // No error if > 80. | 316 security_info_.cert_status = 0; |
314 ssl_.content_status = SSLStatus::DISPLAYED_INSECURE_CONTENT; | 317 security_info_.security_bits = 81; // No error if > 80. |
| 318 security_info_.mixed_content_status = |
| 319 SecurityStateModel::DISPLAYED_MIXED_CONTENT; |
315 int status = 0; | 320 int status = 0; |
316 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); | 321 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
317 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); | 322 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); |
318 ssl_.connection_status = status; | 323 security_info_.connection_status = status; |
319 | 324 |
320 SetDefaultUIExpectations(mock_ui()); | 325 SetDefaultUIExpectations(mock_ui()); |
321 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); | 326 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); |
322 | 327 |
323 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_CONTENT, | 328 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_CONTENT, |
324 website_settings()->site_connection_status()); | 329 website_settings()->site_connection_status()); |
325 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, | 330 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, |
326 website_settings()->site_identity_status()); | 331 website_settings()->site_identity_status()); |
327 EXPECT_EQ(IDR_PAGEINFO_WARNING_MINOR, | 332 EXPECT_EQ(IDR_PAGEINFO_WARNING_MINOR, |
328 WebsiteSettingsUI::GetConnectionIconID( | 333 WebsiteSettingsUI::GetConnectionIconID( |
329 website_settings()->site_connection_status())); | 334 website_settings()->site_connection_status())); |
330 EXPECT_EQ(base::string16(), website_settings()->organization_name()); | 335 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
331 } | 336 } |
332 | 337 |
333 TEST_F(WebsiteSettingsTest, HTTPSActiveMixedContent) { | 338 TEST_F(WebsiteSettingsTest, HTTPSActiveMixedContent) { |
334 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATION_BROKEN; | 339 security_info_.security_level = SecurityStateModel::SECURITY_ERROR; |
335 ssl_.cert_id = cert_id(); | 340 security_info_.scheme_is_cryptographic = true; |
336 ssl_.cert_status = 0; | 341 security_info_.cert_id = cert_id(); |
337 ssl_.security_bits = 81; // No error if > 80. | 342 security_info_.cert_status = 0; |
338 ssl_.content_status = SSLStatus::RAN_INSECURE_CONTENT; | 343 security_info_.security_bits = 81; // No error if > 80. |
| 344 security_info_.mixed_content_status = |
| 345 SecurityStateModel::RAN_AND_DISPLAYED_MIXED_CONTENT; |
339 int status = 0; | 346 int status = 0; |
340 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); | 347 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
341 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); | 348 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); |
342 ssl_.connection_status = status; | 349 security_info_.connection_status = status; |
343 | 350 |
344 SetDefaultUIExpectations(mock_ui()); | 351 SetDefaultUIExpectations(mock_ui()); |
345 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); | 352 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); |
346 | 353 |
347 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_SCRIPT, | 354 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_SCRIPT, |
348 website_settings()->site_connection_status()); | 355 website_settings()->site_connection_status()); |
349 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, | 356 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, |
350 website_settings()->site_identity_status()); | 357 website_settings()->site_identity_status()); |
351 EXPECT_EQ(IDR_PAGEINFO_BAD, | 358 EXPECT_EQ(IDR_PAGEINFO_BAD, |
352 WebsiteSettingsUI::GetConnectionIconID( | 359 WebsiteSettingsUI::GetConnectionIconID( |
353 website_settings()->site_connection_status())); | 360 website_settings()->site_connection_status())); |
354 EXPECT_EQ(base::string16(), website_settings()->organization_name()); | 361 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
355 } | 362 } |
356 | 363 |
357 TEST_F(WebsiteSettingsTest, HTTPSEVCert) { | 364 TEST_F(WebsiteSettingsTest, HTTPSEVCert) { |
358 scoped_refptr<net::X509Certificate> ev_cert = | 365 scoped_refptr<net::X509Certificate> ev_cert = |
359 net::X509Certificate::CreateFromBytes( | 366 net::X509Certificate::CreateFromBytes( |
360 reinterpret_cast<const char*>(google_der), | 367 reinterpret_cast<const char*>(google_der), |
361 sizeof(google_der)); | 368 sizeof(google_der)); |
362 int ev_cert_id = 1; | 369 int ev_cert_id = 1; |
363 EXPECT_CALL(*cert_store(), RetrieveCert(ev_cert_id, _)).WillRepeatedly( | 370 EXPECT_CALL(*cert_store(), RetrieveCert(ev_cert_id, _)).WillRepeatedly( |
364 DoAll(SetArgPointee<1>(ev_cert), Return(true))); | 371 DoAll(SetArgPointee<1>(ev_cert), Return(true))); |
365 | 372 |
366 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; | 373 security_info_.security_level = SecurityStateModel::NONE; |
367 ssl_.cert_id = ev_cert_id; | 374 security_info_.scheme_is_cryptographic = true; |
368 ssl_.cert_status = net::CERT_STATUS_IS_EV; | 375 security_info_.cert_id = ev_cert_id; |
369 ssl_.security_bits = 81; // No error if > 80. | 376 security_info_.cert_status = net::CERT_STATUS_IS_EV; |
370 ssl_.content_status = SSLStatus::DISPLAYED_INSECURE_CONTENT; | 377 security_info_.security_bits = 81; // No error if > 80. |
| 378 security_info_.mixed_content_status = |
| 379 SecurityStateModel::DISPLAYED_MIXED_CONTENT; |
371 int status = 0; | 380 int status = 0; |
372 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); | 381 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
373 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); | 382 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); |
374 ssl_.connection_status = status; | 383 security_info_.connection_status = status; |
375 | 384 |
376 SetDefaultUIExpectations(mock_ui()); | 385 SetDefaultUIExpectations(mock_ui()); |
377 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); | 386 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); |
378 | 387 |
379 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_CONTENT, | 388 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_MIXED_CONTENT, |
380 website_settings()->site_connection_status()); | 389 website_settings()->site_connection_status()); |
381 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_EV_CERT, | 390 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_EV_CERT, |
382 website_settings()->site_identity_status()); | 391 website_settings()->site_identity_status()); |
383 EXPECT_EQ(base::UTF8ToUTF16("Google Inc"), | 392 EXPECT_EQ(base::UTF8ToUTF16("Google Inc"), |
384 website_settings()->organization_name()); | 393 website_settings()->organization_name()); |
385 } | 394 } |
386 | 395 |
387 TEST_F(WebsiteSettingsTest, HTTPSRevocationError) { | 396 TEST_F(WebsiteSettingsTest, HTTPSRevocationError) { |
388 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; | 397 security_info_.security_level = SecurityStateModel::SECURE; |
389 ssl_.cert_id = cert_id(); | 398 security_info_.scheme_is_cryptographic = true; |
390 ssl_.cert_status = net::CERT_STATUS_UNABLE_TO_CHECK_REVOCATION; | 399 security_info_.cert_id = cert_id(); |
391 ssl_.security_bits = 81; // No error if > 80. | 400 security_info_.cert_status = net::CERT_STATUS_UNABLE_TO_CHECK_REVOCATION; |
| 401 security_info_.security_bits = 81; // No error if > 80. |
392 int status = 0; | 402 int status = 0; |
393 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); | 403 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
394 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); | 404 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); |
395 ssl_.connection_status = status; | 405 security_info_.connection_status = status; |
396 | 406 |
397 SetDefaultUIExpectations(mock_ui()); | 407 SetDefaultUIExpectations(mock_ui()); |
398 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); | 408 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); |
399 | 409 |
400 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED, | 410 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED, |
401 website_settings()->site_connection_status()); | 411 website_settings()->site_connection_status()); |
402 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT_REVOCATION_UNKNOWN, | 412 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT_REVOCATION_UNKNOWN, |
403 website_settings()->site_identity_status()); | 413 website_settings()->site_identity_status()); |
404 EXPECT_EQ(base::string16(), website_settings()->organization_name()); | 414 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
405 } | 415 } |
406 | 416 |
407 TEST_F(WebsiteSettingsTest, HTTPSConnectionError) { | 417 TEST_F(WebsiteSettingsTest, HTTPSConnectionError) { |
408 ssl_.security_style = content::SECURITY_STYLE_AUTHENTICATED; | 418 security_info_.security_level = SecurityStateModel::SECURE; |
409 ssl_.cert_id = cert_id(); | 419 security_info_.scheme_is_cryptographic = true; |
410 ssl_.cert_status = 0; | 420 security_info_.cert_id = cert_id(); |
411 ssl_.security_bits = -1; | 421 security_info_.cert_status = 0; |
| 422 security_info_.security_bits = -1; |
412 int status = 0; | 423 int status = 0; |
413 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); | 424 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
414 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); | 425 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); |
415 ssl_.connection_status = status; | 426 security_info_.connection_status = status; |
416 | 427 |
417 SetDefaultUIExpectations(mock_ui()); | 428 SetDefaultUIExpectations(mock_ui()); |
418 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); | 429 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); |
419 | 430 |
420 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED_ERROR, | 431 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED_ERROR, |
421 website_settings()->site_connection_status()); | 432 website_settings()->site_connection_status()); |
422 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, | 433 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_CERT, |
423 website_settings()->site_identity_status()); | 434 website_settings()->site_identity_status()); |
424 EXPECT_EQ(base::string16(), website_settings()->organization_name()); | 435 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
425 } | 436 } |
426 | 437 |
| 438 TEST_F(WebsiteSettingsTest, HTTPSPolicyCertConnection) { |
| 439 security_info_.security_level = SecurityStateModel::SECURITY_POLICY_WARNING; |
| 440 security_info_.scheme_is_cryptographic = true; |
| 441 security_info_.cert_id = cert_id(); |
| 442 security_info_.cert_status = 0; |
| 443 security_info_.security_bits = 81; // No error if > 80. |
| 444 int status = 0; |
| 445 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
| 446 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); |
| 447 security_info_.connection_status = status; |
| 448 |
| 449 SetDefaultUIExpectations(mock_ui()); |
| 450 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); |
| 451 |
| 452 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED, |
| 453 website_settings()->site_connection_status()); |
| 454 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_ADMIN_PROVIDED_CERT, |
| 455 website_settings()->site_identity_status()); |
| 456 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
| 457 } |
| 458 |
| 459 TEST_F(WebsiteSettingsTest, HTTPSSHA1Connection) { |
| 460 security_info_.security_level = SecurityStateModel::NONE; |
| 461 security_info_.scheme_is_cryptographic = true; |
| 462 security_info_.cert_id = cert_id(); |
| 463 security_info_.cert_status = 0; |
| 464 security_info_.security_bits = 81; // No error if > 80. |
| 465 int status = 0; |
| 466 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
| 467 status = SetSSLCipherSuite(status, CR_TLS_RSA_WITH_AES_256_CBC_SHA256); |
| 468 security_info_.connection_status = status; |
| 469 security_info_.sha1_deprecation_status = |
| 470 SecurityStateModel::DEPRECATED_SHA1_WARNING; |
| 471 |
| 472 SetDefaultUIExpectations(mock_ui()); |
| 473 EXPECT_CALL(*mock_ui(), SetSelectedTab(WebsiteSettingsUI::TAB_ID_CONNECTION)); |
| 474 |
| 475 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_ENCRYPTED, |
| 476 website_settings()->site_connection_status()); |
| 477 EXPECT_EQ( |
| 478 WebsiteSettings::SITE_IDENTITY_STATUS_DEPRECATED_SIGNATURE_ALGORITHM, |
| 479 website_settings()->site_identity_status()); |
| 480 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
| 481 } |
| 482 |
427 #if !defined(OS_ANDROID) | 483 #if !defined(OS_ANDROID) |
428 TEST_F(WebsiteSettingsTest, NoInfoBar) { | 484 TEST_F(WebsiteSettingsTest, NoInfoBar) { |
429 SetDefaultUIExpectations(mock_ui()); | 485 SetDefaultUIExpectations(mock_ui()); |
430 EXPECT_CALL(*mock_ui(), SetSelectedTab( | 486 EXPECT_CALL(*mock_ui(), SetSelectedTab( |
431 WebsiteSettingsUI::TAB_ID_PERMISSIONS)); | 487 WebsiteSettingsUI::TAB_ID_PERMISSIONS)); |
432 EXPECT_EQ(0u, infobar_service()->infobar_count()); | 488 EXPECT_EQ(0u, infobar_service()->infobar_count()); |
433 website_settings()->OnUIClosing(); | 489 website_settings()->OnUIClosing(); |
434 EXPECT_EQ(0u, infobar_service()->infobar_count()); | 490 EXPECT_EQ(0u, infobar_service()->infobar_count()); |
435 } | 491 } |
436 | 492 |
(...skipping 27 matching lines...) Expand all Loading... |
464 | 520 |
465 TEST_F(WebsiteSettingsTest, InternalPage) { | 521 TEST_F(WebsiteSettingsTest, InternalPage) { |
466 SetURL("chrome://bookmarks"); | 522 SetURL("chrome://bookmarks"); |
467 SetDefaultUIExpectations(mock_ui()); | 523 SetDefaultUIExpectations(mock_ui()); |
468 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_INTERNAL_PAGE, | 524 EXPECT_EQ(WebsiteSettings::SITE_CONNECTION_STATUS_INTERNAL_PAGE, |
469 website_settings()->site_connection_status()); | 525 website_settings()->site_connection_status()); |
470 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_INTERNAL_PAGE, | 526 EXPECT_EQ(WebsiteSettings::SITE_IDENTITY_STATUS_INTERNAL_PAGE, |
471 website_settings()->site_identity_status()); | 527 website_settings()->site_identity_status()); |
472 EXPECT_EQ(base::string16(), website_settings()->organization_name()); | 528 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
473 } | 529 } |
OLD | NEW |