| 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/page_info/website_settings.h" | 5 #include "chrome/browser/ui/page_info/website_settings.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/at_exit.h" | 10 #include "base/at_exit.h" |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 141 last_chosen_object_info_.push_back(std::move(chosen_object_info)); | 141 last_chosen_object_info_.push_back(std::move(chosen_object_info)); |
| 142 } | 142 } |
| 143 | 143 |
| 144 void ResetMockUI() { mock_ui_.reset(new MockWebsiteSettingsUI()); } | 144 void ResetMockUI() { mock_ui_.reset(new MockWebsiteSettingsUI()); } |
| 145 | 145 |
| 146 void ClearWebsiteSettings() { website_settings_.reset(nullptr); } | 146 void ClearWebsiteSettings() { website_settings_.reset(nullptr); } |
| 147 | 147 |
| 148 const GURL& url() const { return url_; } | 148 const GURL& url() const { return url_; } |
| 149 scoped_refptr<net::X509Certificate> cert() { return cert_; } | 149 scoped_refptr<net::X509Certificate> cert() { return cert_; } |
| 150 MockWebsiteSettingsUI* mock_ui() { return mock_ui_.get(); } | 150 MockWebsiteSettingsUI* mock_ui() { return mock_ui_.get(); } |
| 151 const security_state::SecurityInfo& security_info() { | 151 const security_state::SecurityInfo& security_info() { return security_info_; } |
| 152 return security_info_; | |
| 153 } | |
| 154 const std::vector<std::unique_ptr<WebsiteSettingsUI::ChosenObjectInfo>>& | 152 const std::vector<std::unique_ptr<WebsiteSettingsUI::ChosenObjectInfo>>& |
| 155 last_chosen_object_info() { | 153 last_chosen_object_info() { |
| 156 return last_chosen_object_info_; | 154 return last_chosen_object_info_; |
| 157 } | 155 } |
| 158 TabSpecificContentSettings* tab_specific_content_settings() { | 156 TabSpecificContentSettings* tab_specific_content_settings() { |
| 159 return TabSpecificContentSettings::FromWebContents(web_contents()); | 157 return TabSpecificContentSettings::FromWebContents(web_contents()); |
| 160 } | 158 } |
| 161 InfoBarService* infobar_service() { | 159 InfoBarService* infobar_service() { |
| 162 return InfoBarService::FromWebContents(web_contents()); | 160 return InfoBarService::FromWebContents(web_contents()); |
| 163 } | 161 } |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 210 setting = content_settings->GetContentSetting( | 208 setting = content_settings->GetContentSetting( |
| 211 url(), url(), CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, std::string()); | 209 url(), url(), CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, std::string()); |
| 212 EXPECT_EQ(setting, CONTENT_SETTING_ASK); | 210 EXPECT_EQ(setting, CONTENT_SETTING_ASK); |
| 213 setting = content_settings->GetContentSetting( | 211 setting = content_settings->GetContentSetting( |
| 214 url(), url(), CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, std::string()); | 212 url(), url(), CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, std::string()); |
| 215 EXPECT_EQ(setting, CONTENT_SETTING_ASK); | 213 EXPECT_EQ(setting, CONTENT_SETTING_ASK); |
| 216 | 214 |
| 217 EXPECT_CALL(*mock_ui(), SetIdentityInfo(_)); | 215 EXPECT_CALL(*mock_ui(), SetIdentityInfo(_)); |
| 218 EXPECT_CALL(*mock_ui(), SetCookieInfo(_)); | 216 EXPECT_CALL(*mock_ui(), SetCookieInfo(_)); |
| 219 | 217 |
| 220 // SetPermissionInfo() is called once initially, and then again every time | 218 // SetPermissionInfo() is called once initially, and then again every time |
| 221 // OnSitePermissionChanged() is called. | 219 // OnSitePermissionChanged() is called. |
| 222 #if !BUILDFLAG(ENABLE_PLUGINS) | 220 #if !BUILDFLAG(ENABLE_PLUGINS) |
| 223 // SetPermissionInfo for plugins didn't get called. | 221 // SetPermissionInfo for plugins didn't get called. |
| 224 EXPECT_CALL(*mock_ui(), SetPermissionInfoStub()).Times(6); | 222 EXPECT_CALL(*mock_ui(), SetPermissionInfoStub()).Times(6); |
| 225 #else | 223 #else |
| 226 EXPECT_CALL(*mock_ui(), SetPermissionInfoStub()).Times(7); | 224 EXPECT_CALL(*mock_ui(), SetPermissionInfoStub()).Times(7); |
| 227 #endif | 225 #endif |
| 228 | 226 |
| 229 // Execute code under tests. | 227 // Execute code under tests. |
| 230 website_settings()->OnSitePermissionChanged(CONTENT_SETTINGS_TYPE_POPUPS, | 228 website_settings()->OnSitePermissionChanged(CONTENT_SETTINGS_TYPE_POPUPS, |
| 231 CONTENT_SETTING_ALLOW); | 229 CONTENT_SETTING_ALLOW); |
| (...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 499 EXPECT_EQ(test.expected_connection_icon_id, | 497 EXPECT_EQ(test.expected_connection_icon_id, |
| 500 WebsiteSettingsUI::GetConnectionIconID( | 498 WebsiteSettingsUI::GetConnectionIconID( |
| 501 website_settings()->site_connection_status())); | 499 website_settings()->site_connection_status())); |
| 502 EXPECT_EQ(base::string16(), website_settings()->organization_name()); | 500 EXPECT_EQ(base::string16(), website_settings()->organization_name()); |
| 503 } | 501 } |
| 504 } | 502 } |
| 505 | 503 |
| 506 TEST_F(WebsiteSettingsTest, HTTPSEVCert) { | 504 TEST_F(WebsiteSettingsTest, HTTPSEVCert) { |
| 507 scoped_refptr<net::X509Certificate> ev_cert = | 505 scoped_refptr<net::X509Certificate> ev_cert = |
| 508 net::X509Certificate::CreateFromBytes( | 506 net::X509Certificate::CreateFromBytes( |
| 509 reinterpret_cast<const char*>(google_der), | 507 reinterpret_cast<const char*>(google_der), sizeof(google_der)); |
| 510 sizeof(google_der)); | |
| 511 | 508 |
| 512 security_info_.security_level = security_state::NONE; | 509 security_info_.security_level = security_state::NONE; |
| 513 security_info_.scheme_is_cryptographic = true; | 510 security_info_.scheme_is_cryptographic = true; |
| 514 security_info_.certificate = ev_cert; | 511 security_info_.certificate = ev_cert; |
| 515 security_info_.cert_status = net::CERT_STATUS_IS_EV; | 512 security_info_.cert_status = net::CERT_STATUS_IS_EV; |
| 516 security_info_.security_bits = 81; // No error if > 80. | 513 security_info_.security_bits = 81; // No error if > 80. |
| 517 security_info_.mixed_content_status = | 514 security_info_.mixed_content_status = |
| 518 security_state::CONTENT_STATUS_DISPLAYED; | 515 security_state::CONTENT_STATUS_DISPLAYED; |
| 519 int status = 0; | 516 int status = 0; |
| 520 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); | 517 status = SetSSLVersion(status, net::SSL_CONNECTION_VERSION_TLS1); |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 626 EXPECT_EQ(0u, infobar_service()->infobar_count()); | 623 EXPECT_EQ(0u, infobar_service()->infobar_count()); |
| 627 } | 624 } |
| 628 | 625 |
| 629 TEST_F(WebsiteSettingsTest, ShowInfoBar) { | 626 TEST_F(WebsiteSettingsTest, ShowInfoBar) { |
| 630 EXPECT_CALL(*mock_ui(), SetIdentityInfo(_)); | 627 EXPECT_CALL(*mock_ui(), SetIdentityInfo(_)); |
| 631 EXPECT_CALL(*mock_ui(), SetCookieInfo(_)); | 628 EXPECT_CALL(*mock_ui(), SetCookieInfo(_)); |
| 632 | 629 |
| 633 EXPECT_CALL(*mock_ui(), SetPermissionInfoStub()).Times(2); | 630 EXPECT_CALL(*mock_ui(), SetPermissionInfoStub()).Times(2); |
| 634 | 631 |
| 635 EXPECT_EQ(0u, infobar_service()->infobar_count()); | 632 EXPECT_EQ(0u, infobar_service()->infobar_count()); |
| 636 website_settings()->OnSitePermissionChanged( | 633 website_settings()->OnSitePermissionChanged(CONTENT_SETTINGS_TYPE_GEOLOCATION, |
| 637 CONTENT_SETTINGS_TYPE_GEOLOCATION, CONTENT_SETTING_ALLOW); | 634 CONTENT_SETTING_ALLOW); |
| 638 website_settings()->OnUIClosing(); | 635 website_settings()->OnUIClosing(); |
| 639 ASSERT_EQ(1u, infobar_service()->infobar_count()); | 636 ASSERT_EQ(1u, infobar_service()->infobar_count()); |
| 640 | 637 |
| 641 infobar_service()->RemoveInfoBar(infobar_service()->infobar_at(0)); | 638 infobar_service()->RemoveInfoBar(infobar_service()->infobar_at(0)); |
| 642 } | 639 } |
| 643 #endif | 640 #endif |
| 644 | 641 |
| 645 TEST_F(WebsiteSettingsTest, AboutBlankPage) { | 642 TEST_F(WebsiteSettingsTest, AboutBlankPage) { |
| 646 SetURL("about:blank"); | 643 SetURL("about:blank"); |
| 647 SetDefaultUIExpectations(mock_ui()); | 644 SetDefaultUIExpectations(mock_ui()); |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 698 SetURL(test.url); | 695 SetURL(test.url); |
| 699 security_info_.security_level = test.security_level; | 696 security_info_.security_level = test.security_level; |
| 700 ResetMockUI(); | 697 ResetMockUI(); |
| 701 ClearWebsiteSettings(); | 698 ClearWebsiteSettings(); |
| 702 SetDefaultUIExpectations(mock_ui()); | 699 SetDefaultUIExpectations(mock_ui()); |
| 703 | 700 |
| 704 histograms.ExpectTotalCount(kGenericHistogram, 0); | 701 histograms.ExpectTotalCount(kGenericHistogram, 0); |
| 705 histograms.ExpectTotalCount(test.histogram_name, 0); | 702 histograms.ExpectTotalCount(test.histogram_name, 0); |
| 706 | 703 |
| 707 website_settings()->RecordWebsiteSettingsAction( | 704 website_settings()->RecordWebsiteSettingsAction( |
| 708 WebsiteSettings::WebsiteSettingsAction:: | 705 WebsiteSettings::WebsiteSettingsAction::WEBSITE_SETTINGS_OPENED); |
| 709 WEBSITE_SETTINGS_OPENED); | |
| 710 | 706 |
| 711 // RecordWebsiteSettingsAction() is called during WebsiteSettings | 707 // RecordWebsiteSettingsAction() is called during WebsiteSettings |
| 712 // creation in addition to the explicit RecordWebsiteSettingsAction() | 708 // creation in addition to the explicit RecordWebsiteSettingsAction() |
| 713 // call, so it is called twice in total. | 709 // call, so it is called twice in total. |
| 714 histograms.ExpectTotalCount(kGenericHistogram, 2); | 710 histograms.ExpectTotalCount(kGenericHistogram, 2); |
| 715 histograms.ExpectBucketCount( | 711 histograms.ExpectBucketCount( |
| 716 kGenericHistogram, | 712 kGenericHistogram, |
| 717 WebsiteSettings::WebsiteSettingsAction::WEBSITE_SETTINGS_OPENED, 2); | 713 WebsiteSettings::WebsiteSettingsAction::WEBSITE_SETTINGS_OPENED, 2); |
| 718 | 714 |
| 719 histograms.ExpectTotalCount(test.histogram_name, 2); | 715 histograms.ExpectTotalCount(test.histogram_name, 2); |
| 720 histograms.ExpectBucketCount( | 716 histograms.ExpectBucketCount( |
| 721 test.histogram_name, | 717 test.histogram_name, |
| 722 WebsiteSettings::WebsiteSettingsAction::WEBSITE_SETTINGS_OPENED, 2); | 718 WebsiteSettings::WebsiteSettingsAction::WEBSITE_SETTINGS_OPENED, 2); |
| 723 } | 719 } |
| 724 } | 720 } |
| OLD | NEW |