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

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

Issue 11570009: Split PrefService into PrefService, PrefServiceSimple and PrefServiceSyncable. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head again, previous had unrelated broken win_rel test. Created 8 years 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/content_settings/content_settings_policy_provider.h" 5 #include "chrome/browser/content_settings/content_settings_policy_provider.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/auto_reset.h" 9 #include "base/auto_reset.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 29 matching lines...) Expand all
40 // TODO(markusheintz): Check if it's possible to derive the provider class 40 // TODO(markusheintz): Check if it's possible to derive the provider class
41 // from NonThreadSafe and to use native thread identifiers instead of 41 // from NonThreadSafe and to use native thread identifiers instead of
42 // BrowserThread IDs. Then we could get rid of the message_loop and ui_thread 42 // BrowserThread IDs. Then we could get rid of the message_loop and ui_thread
43 // fields. 43 // fields.
44 MessageLoop message_loop_; 44 MessageLoop message_loop_;
45 content::TestBrowserThread ui_thread_; 45 content::TestBrowserThread ui_thread_;
46 }; 46 };
47 47
48 TEST_F(PolicyProviderTest, DefaultGeolocationContentSetting) { 48 TEST_F(PolicyProviderTest, DefaultGeolocationContentSetting) {
49 TestingProfile profile; 49 TestingProfile profile;
50 TestingPrefService* prefs = profile.GetTestingPrefService(); 50 TestingPrefServiceSyncable* prefs = profile.GetTestingPrefService();
51 PolicyProvider provider(prefs); 51 PolicyProvider provider(prefs);
52 52
53 Rules rules; 53 Rules rules;
54 54
55 scoped_ptr<RuleIterator> rule_iterator( 55 scoped_ptr<RuleIterator> rule_iterator(
56 provider.GetRuleIterator( 56 provider.GetRuleIterator(
57 CONTENT_SETTINGS_TYPE_GEOLOCATION, 57 CONTENT_SETTINGS_TYPE_GEOLOCATION,
58 std::string(), 58 std::string(),
59 false)); 59 false));
60 EXPECT_FALSE(rule_iterator->HasNext()); 60 EXPECT_FALSE(rule_iterator->HasNext());
(...skipping 13 matching lines...) Expand all
74 74
75 EXPECT_EQ(ContentSettingsPattern::Wildcard(), rule.primary_pattern); 75 EXPECT_EQ(ContentSettingsPattern::Wildcard(), rule.primary_pattern);
76 EXPECT_EQ(ContentSettingsPattern::Wildcard(), rule.secondary_pattern); 76 EXPECT_EQ(ContentSettingsPattern::Wildcard(), rule.secondary_pattern);
77 EXPECT_EQ(CONTENT_SETTING_BLOCK, ValueToContentSetting(rule.value.get())); 77 EXPECT_EQ(CONTENT_SETTING_BLOCK, ValueToContentSetting(rule.value.get()));
78 78
79 provider.ShutdownOnUIThread(); 79 provider.ShutdownOnUIThread();
80 } 80 }
81 81
82 TEST_F(PolicyProviderTest, ManagedDefaultContentSettings) { 82 TEST_F(PolicyProviderTest, ManagedDefaultContentSettings) {
83 TestingProfile profile; 83 TestingProfile profile;
84 TestingPrefService* prefs = profile.GetTestingPrefService(); 84 TestingPrefServiceSyncable* prefs = profile.GetTestingPrefService();
85 PolicyProvider provider(prefs); 85 PolicyProvider provider(prefs);
86 86
87 prefs->SetManagedPref(prefs::kManagedDefaultPluginsSetting, 87 prefs->SetManagedPref(prefs::kManagedDefaultPluginsSetting,
88 Value::CreateIntegerValue(CONTENT_SETTING_BLOCK)); 88 Value::CreateIntegerValue(CONTENT_SETTING_BLOCK));
89 89
90 scoped_ptr<RuleIterator> rule_iterator( 90 scoped_ptr<RuleIterator> rule_iterator(
91 provider.GetRuleIterator( 91 provider.GetRuleIterator(
92 CONTENT_SETTINGS_TYPE_PLUGINS, 92 CONTENT_SETTINGS_TYPE_PLUGINS,
93 std::string(), 93 std::string(),
94 false)); 94 false));
95 EXPECT_TRUE(rule_iterator->HasNext()); 95 EXPECT_TRUE(rule_iterator->HasNext());
96 Rule rule = rule_iterator->Next(); 96 Rule rule = rule_iterator->Next();
97 EXPECT_FALSE(rule_iterator->HasNext()); 97 EXPECT_FALSE(rule_iterator->HasNext());
98 98
99 EXPECT_EQ(ContentSettingsPattern::Wildcard(), rule.primary_pattern); 99 EXPECT_EQ(ContentSettingsPattern::Wildcard(), rule.primary_pattern);
100 EXPECT_EQ(ContentSettingsPattern::Wildcard(), rule.secondary_pattern); 100 EXPECT_EQ(ContentSettingsPattern::Wildcard(), rule.secondary_pattern);
101 EXPECT_EQ(CONTENT_SETTING_BLOCK, ValueToContentSetting(rule.value.get())); 101 EXPECT_EQ(CONTENT_SETTING_BLOCK, ValueToContentSetting(rule.value.get()));
102 102
103 provider.ShutdownOnUIThread(); 103 provider.ShutdownOnUIThread();
104 } 104 }
105 105
106 // When a default-content-setting is set to a managed setting a 106 // When a default-content-setting is set to a managed setting a
107 // CONTENT_SETTINGS_CHANGED notification should be fired. The same should happen 107 // CONTENT_SETTINGS_CHANGED notification should be fired. The same should happen
108 // if the managed setting is removed. 108 // if the managed setting is removed.
109 TEST_F(PolicyProviderTest, ObserveManagedSettingsChange) { 109 TEST_F(PolicyProviderTest, ObserveManagedSettingsChange) {
110 TestingProfile profile; 110 TestingProfile profile;
111 TestingPrefService* prefs = profile.GetTestingPrefService(); 111 TestingPrefServiceSyncable* prefs = profile.GetTestingPrefService();
112 PolicyProvider provider(prefs); 112 PolicyProvider provider(prefs);
113 113
114 MockObserver mock_observer; 114 MockObserver mock_observer;
115 EXPECT_CALL(mock_observer, 115 EXPECT_CALL(mock_observer,
116 OnContentSettingChanged(_, 116 OnContentSettingChanged(_,
117 _, 117 _,
118 CONTENT_SETTINGS_TYPE_DEFAULT, 118 CONTENT_SETTINGS_TYPE_DEFAULT,
119 "")); 119 ""));
120 provider.AddObserver(&mock_observer); 120 provider.AddObserver(&mock_observer);
121 121
122 // Set the managed default-content-setting. 122 // Set the managed default-content-setting.
123 prefs->SetManagedPref(prefs::kManagedDefaultImagesSetting, 123 prefs->SetManagedPref(prefs::kManagedDefaultImagesSetting,
124 Value::CreateIntegerValue(CONTENT_SETTING_BLOCK)); 124 Value::CreateIntegerValue(CONTENT_SETTING_BLOCK));
125 ::testing::Mock::VerifyAndClearExpectations(&mock_observer); 125 ::testing::Mock::VerifyAndClearExpectations(&mock_observer);
126 EXPECT_CALL(mock_observer, 126 EXPECT_CALL(mock_observer,
127 OnContentSettingChanged(_, 127 OnContentSettingChanged(_,
128 _, 128 _,
129 CONTENT_SETTINGS_TYPE_DEFAULT, 129 CONTENT_SETTINGS_TYPE_DEFAULT,
130 "")); 130 ""));
131 // Remove the managed default-content-setting. 131 // Remove the managed default-content-setting.
132 prefs->RemoveManagedPref(prefs::kManagedDefaultImagesSetting); 132 prefs->RemoveManagedPref(prefs::kManagedDefaultImagesSetting);
133 provider.ShutdownOnUIThread(); 133 provider.ShutdownOnUIThread();
134 } 134 }
135 135
136 TEST_F(PolicyProviderTest, GettingManagedContentSettings) { 136 TEST_F(PolicyProviderTest, GettingManagedContentSettings) {
137 TestingProfile profile; 137 TestingProfile profile;
138 TestingPrefService* prefs = profile.GetTestingPrefService(); 138 TestingPrefServiceSyncable* prefs = profile.GetTestingPrefService();
139 139
140 ListValue* value = new ListValue(); 140 ListValue* value = new ListValue();
141 value->Append(Value::CreateStringValue("[*.]google.com")); 141 value->Append(Value::CreateStringValue("[*.]google.com"));
142 prefs->SetManagedPref(prefs::kManagedImagesBlockedForUrls, 142 prefs->SetManagedPref(prefs::kManagedImagesBlockedForUrls,
143 value); 143 value);
144 144
145 PolicyProvider provider(prefs); 145 PolicyProvider provider(prefs);
146 146
147 ContentSettingsPattern yt_url_pattern = 147 ContentSettingsPattern yt_url_pattern =
148 ContentSettingsPattern::FromString("www.youtube.com"); 148 ContentSettingsPattern::FromString("www.youtube.com");
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
186 EXPECT_EQ(CONTENT_SETTING_DEFAULT, 186 EXPECT_EQ(CONTENT_SETTING_DEFAULT,
187 GetContentSetting( 187 GetContentSetting(
188 &provider, youtube_url, youtube_url, 188 &provider, youtube_url, youtube_url,
189 CONTENT_SETTINGS_TYPE_COOKIES, "", false)); 189 CONTENT_SETTINGS_TYPE_COOKIES, "", false));
190 190
191 provider.ShutdownOnUIThread(); 191 provider.ShutdownOnUIThread();
192 } 192 }
193 193
194 TEST_F(PolicyProviderTest, ResourceIdentifier) { 194 TEST_F(PolicyProviderTest, ResourceIdentifier) {
195 TestingProfile profile; 195 TestingProfile profile;
196 TestingPrefService* prefs = profile.GetTestingPrefService(); 196 TestingPrefServiceSyncable* prefs = profile.GetTestingPrefService();
197 197
198 ListValue* value = new ListValue(); 198 ListValue* value = new ListValue();
199 value->Append(Value::CreateStringValue("[*.]google.com")); 199 value->Append(Value::CreateStringValue("[*.]google.com"));
200 prefs->SetManagedPref(prefs::kManagedPluginsAllowedForUrls, 200 prefs->SetManagedPref(prefs::kManagedPluginsAllowedForUrls,
201 value); 201 value);
202 202
203 PolicyProvider provider(prefs); 203 PolicyProvider provider(prefs);
204 204
205 GURL youtube_url("http://www.youtube.com"); 205 GURL youtube_url("http://www.youtube.com");
206 GURL google_url("http://mail.google.com"); 206 GURL google_url("http://mail.google.com");
(...skipping 13 matching lines...) Expand all
220 EXPECT_EQ(CONTENT_SETTING_DEFAULT, 220 EXPECT_EQ(CONTENT_SETTING_DEFAULT,
221 GetContentSetting( 221 GetContentSetting(
222 &provider, google_url, google_url, 222 &provider, google_url, google_url,
223 CONTENT_SETTINGS_TYPE_PLUGINS, "someplugin", false)); 223 CONTENT_SETTINGS_TYPE_PLUGINS, "someplugin", false));
224 224
225 provider.ShutdownOnUIThread(); 225 provider.ShutdownOnUIThread();
226 } 226 }
227 227
228 TEST_F(PolicyProviderTest, AutoSelectCertificateList) { 228 TEST_F(PolicyProviderTest, AutoSelectCertificateList) {
229 TestingProfile profile; 229 TestingProfile profile;
230 TestingPrefService* prefs = profile.GetTestingPrefService(); 230 TestingPrefServiceSyncable* prefs = profile.GetTestingPrefService();
231 231
232 PolicyProvider provider(prefs); 232 PolicyProvider provider(prefs);
233 GURL google_url("https://mail.google.com"); 233 GURL google_url("https://mail.google.com");
234 // Tests the default setting for auto selecting certificates 234 // Tests the default setting for auto selecting certificates
235 EXPECT_EQ(NULL, 235 EXPECT_EQ(NULL,
236 GetContentSettingValue( 236 GetContentSettingValue(
237 &provider, google_url, google_url, 237 &provider, google_url, google_url,
238 CONTENT_SETTINGS_TYPE_AUTO_SELECT_CERTIFICATE, "", false)); 238 CONTENT_SETTINGS_TYPE_AUTO_SELECT_CERTIFICATE, "", false));
239 239
240 // Set the content settings pattern list for origins to auto select 240 // Set the content settings pattern list for origins to auto select
(...skipping 17 matching lines...) Expand all
258 ASSERT_EQ(Value::TYPE_DICTIONARY, cert_filter->GetType()); 258 ASSERT_EQ(Value::TYPE_DICTIONARY, cert_filter->GetType());
259 DictionaryValue* dict_value = 259 DictionaryValue* dict_value =
260 static_cast<DictionaryValue*>(cert_filter.get()); 260 static_cast<DictionaryValue*>(cert_filter.get());
261 std::string actual_common_name; 261 std::string actual_common_name;
262 ASSERT_TRUE(dict_value->GetString("ISSUER.CN", &actual_common_name)); 262 ASSERT_TRUE(dict_value->GetString("ISSUER.CN", &actual_common_name));
263 EXPECT_EQ("issuer name", actual_common_name); 263 EXPECT_EQ("issuer name", actual_common_name);
264 provider.ShutdownOnUIThread(); 264 provider.ShutdownOnUIThread();
265 } 265 }
266 266
267 } // namespace content_settings 267 } // namespace content_settings
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698