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

Side by Side Diff: chrome/browser/content_settings/host_content_settings_map_unittest.cc

Issue 2782553004: Move TestingPrefService to use unique_ptr<Value> (Closed)
Patch Set: comments Created 3 years, 8 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 (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 <memory> 5 #include <memory>
6 #include <string> 6 #include <string>
7 7
8 #include "base/auto_reset.h" 8 #include "base/auto_reset.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/json/json_reader.h" 10 #include "base/json/json_reader.h"
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 // Add support as needed. 82 // Add support as needed.
83 NOTREACHED(); 83 NOTREACHED();
84 } 84 }
85 } 85 }
86 86
87 void ClearPolicyDefault() { 87 void ClearPolicyDefault() {
88 prefs_->RemoveManagedPref(policy_default_setting_); 88 prefs_->RemoveManagedPref(policy_default_setting_);
89 } 89 }
90 90
91 void SetPolicyDefault(ContentSetting setting) { 91 void SetPolicyDefault(ContentSetting setting) {
92 prefs_->SetManagedPref(policy_default_setting_, new base::Value(setting)); 92 prefs_->SetManagedPref(policy_default_setting_,
93 base::MakeUnique<base::Value>(setting));
93 } 94 }
94 95
95 void AddUserException(std::string exception, 96 void AddUserException(std::string exception,
96 ContentSetting content_settings) { 97 ContentSetting content_settings) {
97 ContentSettingsPattern pattern = 98 ContentSettingsPattern pattern =
98 ContentSettingsPattern::FromString(exception); 99 ContentSettingsPattern::FromString(exception);
99 host_content_settings_map_->SetContentSettingCustomScope( 100 host_content_settings_map_->SetContentSettingCustomScope(
100 pattern, pattern, content_type_, std::string(), content_settings); 101 pattern, pattern, content_type_, std::string(), content_settings);
101 } 102 }
102 103
(...skipping 933 matching lines...) Expand 10 before | Expand all | Expand 10 after
1036 HostContentSettingsMapFactory::GetForProfile(&profile); 1037 HostContentSettingsMapFactory::GetForProfile(&profile);
1037 sync_preferences::TestingPrefServiceSyncable* prefs = 1038 sync_preferences::TestingPrefServiceSyncable* prefs =
1038 profile.GetTestingPrefService(); 1039 profile.GetTestingPrefService();
1039 1040
1040 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1041 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1041 host_content_settings_map->GetDefaultContentSetting( 1042 host_content_settings_map->GetDefaultContentSetting(
1042 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL)); 1043 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL));
1043 1044
1044 // Set managed-default-content-setting through the coresponding preferences. 1045 // Set managed-default-content-setting through the coresponding preferences.
1045 prefs->SetManagedPref(prefs::kManagedDefaultJavaScriptSetting, 1046 prefs->SetManagedPref(prefs::kManagedDefaultJavaScriptSetting,
1046 new base::Value(CONTENT_SETTING_BLOCK)); 1047 base::MakeUnique<base::Value>(CONTENT_SETTING_BLOCK));
1047 EXPECT_EQ(CONTENT_SETTING_BLOCK, 1048 EXPECT_EQ(CONTENT_SETTING_BLOCK,
1048 host_content_settings_map->GetDefaultContentSetting( 1049 host_content_settings_map->GetDefaultContentSetting(
1049 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL)); 1050 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL));
1050 1051
1051 // Remove managed-default-content-settings-preferences. 1052 // Remove managed-default-content-settings-preferences.
1052 prefs->RemoveManagedPref(prefs::kManagedDefaultJavaScriptSetting); 1053 prefs->RemoveManagedPref(prefs::kManagedDefaultJavaScriptSetting);
1053 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1054 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1054 host_content_settings_map->GetDefaultContentSetting( 1055 host_content_settings_map->GetDefaultContentSetting(
1055 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL)); 1056 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL));
1056 1057
1057 #if BUILDFLAG(ENABLE_PLUGINS) 1058 #if BUILDFLAG(ENABLE_PLUGINS)
1058 // Set preference to manage the default-content-setting for Plugins. 1059 // Set preference to manage the default-content-setting for Plugins.
1059 prefs->SetManagedPref(prefs::kManagedDefaultPluginsSetting, 1060 prefs->SetManagedPref(prefs::kManagedDefaultPluginsSetting,
1060 new base::Value(CONTENT_SETTING_BLOCK)); 1061 base::MakeUnique<base::Value>(CONTENT_SETTING_BLOCK));
1061 EXPECT_EQ(CONTENT_SETTING_BLOCK, 1062 EXPECT_EQ(CONTENT_SETTING_BLOCK,
1062 host_content_settings_map->GetDefaultContentSetting( 1063 host_content_settings_map->GetDefaultContentSetting(
1063 CONTENT_SETTINGS_TYPE_PLUGINS, NULL)); 1064 CONTENT_SETTINGS_TYPE_PLUGINS, NULL));
1064 1065
1065 // Remove the preference to manage the default-content-setting for Plugins. 1066 // Remove the preference to manage the default-content-setting for Plugins.
1066 prefs->RemoveManagedPref(prefs::kManagedDefaultPluginsSetting); 1067 prefs->RemoveManagedPref(prefs::kManagedDefaultPluginsSetting);
1067 EXPECT_EQ(CONTENT_SETTING_DETECT_IMPORTANT_CONTENT, 1068 EXPECT_EQ(CONTENT_SETTING_DETECT_IMPORTANT_CONTENT,
1068 host_content_settings_map->GetDefaultContentSetting( 1069 host_content_settings_map->GetDefaultContentSetting(
1069 CONTENT_SETTINGS_TYPE_PLUGINS, NULL)); 1070 CONTENT_SETTINGS_TYPE_PLUGINS, NULL));
1070 #endif 1071 #endif
(...skipping 16 matching lines...) Expand all
1087 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1088 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1088 host_content_settings_map->GetDefaultContentSetting( 1089 host_content_settings_map->GetDefaultContentSetting(
1089 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL)); 1090 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL));
1090 1091
1091 EXPECT_EQ(CONTENT_SETTING_BLOCK, 1092 EXPECT_EQ(CONTENT_SETTING_BLOCK,
1092 host_content_settings_map->GetContentSetting( 1093 host_content_settings_map->GetContentSetting(
1093 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string())); 1094 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string()));
1094 1095
1095 // Set managed-default-content-setting for content-settings-type JavaScript. 1096 // Set managed-default-content-setting for content-settings-type JavaScript.
1096 prefs->SetManagedPref(prefs::kManagedDefaultJavaScriptSetting, 1097 prefs->SetManagedPref(prefs::kManagedDefaultJavaScriptSetting,
1097 new base::Value(CONTENT_SETTING_ALLOW)); 1098 base::MakeUnique<base::Value>(CONTENT_SETTING_ALLOW));
1098 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1099 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1099 host_content_settings_map->GetContentSetting( 1100 host_content_settings_map->GetContentSetting(
1100 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string())); 1101 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string()));
1101 } 1102 }
1102 1103
1103 // Managed default content setting should have higher priority 1104 // Managed default content setting should have higher priority
1104 // than user defined patterns. 1105 // than user defined patterns.
1105 TEST_F(HostContentSettingsMapTest, 1106 TEST_F(HostContentSettingsMapTest,
1106 ManagedDefaultContentSettingIgnoreUserPattern) { 1107 ManagedDefaultContentSettingIgnoreUserPattern) {
1107 TestingProfile profile; 1108 TestingProfile profile;
(...skipping 16 matching lines...) Expand all
1124 EXPECT_EQ(CONTENT_SETTING_BLOCK, 1125 EXPECT_EQ(CONTENT_SETTING_BLOCK,
1125 host_content_settings_map->GetDefaultContentSetting( 1126 host_content_settings_map->GetDefaultContentSetting(
1126 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL)); 1127 CONTENT_SETTINGS_TYPE_JAVASCRIPT, NULL));
1127 1128
1128 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1129 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1129 host_content_settings_map->GetContentSetting( 1130 host_content_settings_map->GetContentSetting(
1130 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string())); 1131 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string()));
1131 1132
1132 // Set managed-default-content-settings-preferences. 1133 // Set managed-default-content-settings-preferences.
1133 prefs->SetManagedPref(prefs::kManagedDefaultJavaScriptSetting, 1134 prefs->SetManagedPref(prefs::kManagedDefaultJavaScriptSetting,
1134 new base::Value(CONTENT_SETTING_BLOCK)); 1135 base::MakeUnique<base::Value>(CONTENT_SETTING_BLOCK));
1135 EXPECT_EQ(CONTENT_SETTING_BLOCK, 1136 EXPECT_EQ(CONTENT_SETTING_BLOCK,
1136 host_content_settings_map->GetContentSetting( 1137 host_content_settings_map->GetContentSetting(
1137 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string())); 1138 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string()));
1138 1139
1139 // Remove managed-default-content-settings-preferences. 1140 // Remove managed-default-content-settings-preferences.
1140 prefs->RemoveManagedPref(prefs::kManagedDefaultJavaScriptSetting); 1141 prefs->RemoveManagedPref(prefs::kManagedDefaultJavaScriptSetting);
1141 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1142 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1142 host_content_settings_map->GetContentSetting( 1143 host_content_settings_map->GetContentSetting(
1143 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string())); 1144 host, host, CONTENT_SETTINGS_TYPE_JAVASCRIPT, std::string()));
1144 } 1145 }
1145 1146
1146 // If a default-content-setting is set to managed setting, the user defined 1147 // If a default-content-setting is set to managed setting, the user defined
1147 // setting should be preserved. 1148 // setting should be preserved.
1148 TEST_F(HostContentSettingsMapTest, OverwrittenDefaultContentSetting) { 1149 TEST_F(HostContentSettingsMapTest, OverwrittenDefaultContentSetting) {
1149 TestingProfile profile; 1150 TestingProfile profile;
1150 HostContentSettingsMap* host_content_settings_map = 1151 HostContentSettingsMap* host_content_settings_map =
1151 HostContentSettingsMapFactory::GetForProfile(&profile); 1152 HostContentSettingsMapFactory::GetForProfile(&profile);
1152 sync_preferences::TestingPrefServiceSyncable* prefs = 1153 sync_preferences::TestingPrefServiceSyncable* prefs =
1153 profile.GetTestingPrefService(); 1154 profile.GetTestingPrefService();
1154 1155
1155 // Set user defined default-content-setting for Cookies. 1156 // Set user defined default-content-setting for Cookies.
1156 host_content_settings_map->SetDefaultContentSetting( 1157 host_content_settings_map->SetDefaultContentSetting(
1157 CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_BLOCK); 1158 CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_BLOCK);
1158 EXPECT_EQ(CONTENT_SETTING_BLOCK, 1159 EXPECT_EQ(CONTENT_SETTING_BLOCK,
1159 host_content_settings_map->GetDefaultContentSetting( 1160 host_content_settings_map->GetDefaultContentSetting(
1160 CONTENT_SETTINGS_TYPE_COOKIES, NULL)); 1161 CONTENT_SETTINGS_TYPE_COOKIES, NULL));
1161 1162
1162 // Set preference to manage the default-content-setting for Cookies. 1163 // Set preference to manage the default-content-setting for Cookies.
1163 prefs->SetManagedPref(prefs::kManagedDefaultCookiesSetting, 1164 prefs->SetManagedPref(prefs::kManagedDefaultCookiesSetting,
1164 new base::Value(CONTENT_SETTING_ALLOW)); 1165 base::MakeUnique<base::Value>(CONTENT_SETTING_ALLOW));
1165 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1166 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1166 host_content_settings_map->GetDefaultContentSetting( 1167 host_content_settings_map->GetDefaultContentSetting(
1167 CONTENT_SETTINGS_TYPE_COOKIES, NULL)); 1168 CONTENT_SETTINGS_TYPE_COOKIES, NULL));
1168 1169
1169 // Remove the preference to manage the default-content-setting for Cookies. 1170 // Remove the preference to manage the default-content-setting for Cookies.
1170 prefs->RemoveManagedPref(prefs::kManagedDefaultCookiesSetting); 1171 prefs->RemoveManagedPref(prefs::kManagedDefaultCookiesSetting);
1171 EXPECT_EQ(CONTENT_SETTING_BLOCK, 1172 EXPECT_EQ(CONTENT_SETTING_BLOCK,
1172 host_content_settings_map->GetDefaultContentSetting( 1173 host_content_settings_map->GetDefaultContentSetting(
1173 CONTENT_SETTINGS_TYPE_COOKIES, NULL)); 1174 CONTENT_SETTINGS_TYPE_COOKIES, NULL));
1174 } 1175 }
1175 1176
1176 // If a setting for a default-content-setting-type is set while the type is 1177 // If a setting for a default-content-setting-type is set while the type is
1177 // managed, then the new setting should be preserved and used after the 1178 // managed, then the new setting should be preserved and used after the
1178 // default-content-setting-type is not managed anymore. 1179 // default-content-setting-type is not managed anymore.
1179 TEST_F(HostContentSettingsMapTest, SettingDefaultContentSettingsWhenManaged) { 1180 TEST_F(HostContentSettingsMapTest, SettingDefaultContentSettingsWhenManaged) {
1180 TestingProfile profile; 1181 TestingProfile profile;
1181 HostContentSettingsMap* host_content_settings_map = 1182 HostContentSettingsMap* host_content_settings_map =
1182 HostContentSettingsMapFactory::GetForProfile(&profile); 1183 HostContentSettingsMapFactory::GetForProfile(&profile);
1183 sync_preferences::TestingPrefServiceSyncable* prefs = 1184 sync_preferences::TestingPrefServiceSyncable* prefs =
1184 profile.GetTestingPrefService(); 1185 profile.GetTestingPrefService();
1185 1186
1186 prefs->SetManagedPref(prefs::kManagedDefaultCookiesSetting, 1187 prefs->SetManagedPref(prefs::kManagedDefaultCookiesSetting,
1187 new base::Value(CONTENT_SETTING_ALLOW)); 1188 base::MakeUnique<base::Value>(CONTENT_SETTING_ALLOW));
1188 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1189 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1189 host_content_settings_map->GetDefaultContentSetting( 1190 host_content_settings_map->GetDefaultContentSetting(
1190 CONTENT_SETTINGS_TYPE_COOKIES, NULL)); 1191 CONTENT_SETTINGS_TYPE_COOKIES, NULL));
1191 1192
1192 host_content_settings_map->SetDefaultContentSetting( 1193 host_content_settings_map->SetDefaultContentSetting(
1193 CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_BLOCK); 1194 CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_BLOCK);
1194 EXPECT_EQ(CONTENT_SETTING_ALLOW, 1195 EXPECT_EQ(CONTENT_SETTING_ALLOW,
1195 host_content_settings_map->GetDefaultContentSetting( 1196 host_content_settings_map->GetDefaultContentSetting(
1196 CONTENT_SETTINGS_TYPE_COOKIES, NULL)); 1197 CONTENT_SETTINGS_TYPE_COOKIES, NULL));
1197 1198
(...skipping 551 matching lines...) Expand 10 before | Expand all | Expand 10 after
1749 EXPECT_TRUE(map->CanSetNarrowestContentSetting( 1750 EXPECT_TRUE(map->CanSetNarrowestContentSetting(
1750 valid_url, valid_url, 1751 valid_url, valid_url,
1751 CONTENT_SETTINGS_TYPE_POPUPS)); 1752 CONTENT_SETTINGS_TYPE_POPUPS));
1752 1753
1753 GURL invalid_url("about:blank"); 1754 GURL invalid_url("about:blank");
1754 EXPECT_FALSE(map->CanSetNarrowestContentSetting( 1755 EXPECT_FALSE(map->CanSetNarrowestContentSetting(
1755 invalid_url, invalid_url, 1756 invalid_url, invalid_url,
1756 CONTENT_SETTINGS_TYPE_POPUPS)); 1757 CONTENT_SETTINGS_TYPE_POPUPS));
1757 } 1758 }
1758 1759
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698