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

Side by Side Diff: chrome/browser/policy/configuration_policy_pref_store_unittest.cc

Issue 5915004: Introduce incognito preference settings. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed whitespaces in mac files Created 9 years, 11 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) 2010 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 "base/file_path.h" 5 #include "base/file_path.h"
6 #include "base/ref_counted.h"
6 #include "chrome/browser/policy/configuration_policy_pref_store.h" 7 #include "chrome/browser/policy/configuration_policy_pref_store.h"
7 #include "chrome/browser/policy/mock_configuration_policy_provider.h" 8 #include "chrome/browser/policy/mock_configuration_policy_provider.h"
8 #include "chrome/browser/prefs/proxy_prefs.h" 9 #include "chrome/browser/prefs/proxy_prefs.h"
9 #include "chrome/common/notification_service.h" 10 #include "chrome/common/notification_service.h"
10 #include "chrome/common/pref_names.h" 11 #include "chrome/common/pref_names.h"
11 #include "chrome/common/pref_store_observer_mock.h" 12 #include "chrome/common/pref_store_observer_mock.h"
12 #include "testing/gmock/include/gmock/gmock.h" 13 #include "testing/gmock/include/gmock/gmock.h"
13 #include "testing/gtest/include/gtest/gtest.h" 14 #include "testing/gtest/include/gtest/gtest.h"
14 15
15 using testing::_; 16 using testing::_;
(...skipping 14 matching lines...) Expand all
30 private: 31 private:
31 ConfigurationPolicyType type_; 32 ConfigurationPolicyType type_;
32 const char* pref_name_; 33 const char* pref_name_;
33 }; 34 };
34 35
35 template<typename TESTBASE> 36 template<typename TESTBASE>
36 class ConfigurationPolicyPrefStoreTestBase : public TESTBASE { 37 class ConfigurationPolicyPrefStoreTestBase : public TESTBASE {
37 protected: 38 protected:
38 ConfigurationPolicyPrefStoreTestBase() 39 ConfigurationPolicyPrefStoreTestBase()
39 : provider_(), 40 : provider_(),
40 store_(&provider_) {} 41 store_(new ConfigurationPolicyPrefStore(&provider_)) {}
41 42
42 MockConfigurationPolicyProvider provider_; 43 MockConfigurationPolicyProvider provider_;
43 ConfigurationPolicyPrefStore store_; 44 scoped_refptr<ConfigurationPolicyPrefStore> store_;
44 }; 45 };
45 46
46 // Test cases for list-valued policy settings. 47 // Test cases for list-valued policy settings.
47 class ConfigurationPolicyPrefStoreListTest 48 class ConfigurationPolicyPrefStoreListTest
48 : public ConfigurationPolicyPrefStoreTestBase< 49 : public ConfigurationPolicyPrefStoreTestBase<
49 testing::TestWithParam<TypeAndName> > { 50 testing::TestWithParam<TypeAndName> > {
50 }; 51 };
51 52
52 TEST_P(ConfigurationPolicyPrefStoreListTest, GetDefault) { 53 TEST_P(ConfigurationPolicyPrefStoreListTest, GetDefault) {
53 EXPECT_EQ(PrefStore::READ_NO_VALUE, 54 EXPECT_EQ(PrefStore::READ_NO_VALUE,
54 store_.GetValue(GetParam().pref_name(), NULL)); 55 store_->GetValue(GetParam().pref_name(), NULL));
55 } 56 }
56 57
57 TEST_P(ConfigurationPolicyPrefStoreListTest, SetValue) { 58 TEST_P(ConfigurationPolicyPrefStoreListTest, SetValue) {
58 ListValue* in_value = new ListValue(); 59 ListValue* in_value = new ListValue();
59 in_value->Append(Value::CreateStringValue("test1")); 60 in_value->Append(Value::CreateStringValue("test1"));
60 in_value->Append(Value::CreateStringValue("test2,")); 61 in_value->Append(Value::CreateStringValue("test2,"));
61 provider_.AddPolicy(GetParam().type(), in_value); 62 provider_.AddPolicy(GetParam().type(), in_value);
62 store_.OnUpdatePolicy(); 63 store_->OnUpdatePolicy();
63 Value* value; 64 Value* value;
64 EXPECT_EQ(PrefStore::READ_OK, 65 EXPECT_EQ(PrefStore::READ_OK,
65 store_.GetValue(GetParam().pref_name(), &value)); 66 store_->GetValue(GetParam().pref_name(), &value));
66 EXPECT_TRUE(in_value->Equals(value)); 67 EXPECT_TRUE(in_value->Equals(value));
67 } 68 }
68 69
69 INSTANTIATE_TEST_CASE_P( 70 INSTANTIATE_TEST_CASE_P(
70 ConfigurationPolicyPrefStoreListTestInstance, 71 ConfigurationPolicyPrefStoreListTestInstance,
71 ConfigurationPolicyPrefStoreListTest, 72 ConfigurationPolicyPrefStoreListTest,
72 testing::Values( 73 testing::Values(
73 TypeAndName(kPolicyURLsToRestoreOnStartup, 74 TypeAndName(kPolicyURLsToRestoreOnStartup,
74 prefs::kURLsToRestoreOnStartup), 75 prefs::kURLsToRestoreOnStartup),
75 TypeAndName(kPolicyExtensionInstallAllowList, 76 TypeAndName(kPolicyExtensionInstallAllowList,
76 prefs::kExtensionInstallAllowList), 77 prefs::kExtensionInstallAllowList),
77 TypeAndName(kPolicyExtensionInstallDenyList, 78 TypeAndName(kPolicyExtensionInstallDenyList,
78 prefs::kExtensionInstallDenyList), 79 prefs::kExtensionInstallDenyList),
79 TypeAndName(kPolicyDisabledPlugins, 80 TypeAndName(kPolicyDisabledPlugins,
80 prefs::kPluginsPluginsBlacklist))); 81 prefs::kPluginsPluginsBlacklist)));
81 82
82 // Test cases for string-valued policy settings. 83 // Test cases for string-valued policy settings.
83 class ConfigurationPolicyPrefStoreStringTest 84 class ConfigurationPolicyPrefStoreStringTest
84 : public ConfigurationPolicyPrefStoreTestBase< 85 : public ConfigurationPolicyPrefStoreTestBase<
85 testing::TestWithParam<TypeAndName> > { 86 testing::TestWithParam<TypeAndName> > {
86 }; 87 };
87 88
88 TEST_P(ConfigurationPolicyPrefStoreStringTest, GetDefault) { 89 TEST_P(ConfigurationPolicyPrefStoreStringTest, GetDefault) {
89 EXPECT_EQ(PrefStore::READ_NO_VALUE, 90 EXPECT_EQ(PrefStore::READ_NO_VALUE,
90 store_.GetValue(GetParam().pref_name(), NULL)); 91 store_->GetValue(GetParam().pref_name(), NULL));
91 } 92 }
92 93
93 TEST_P(ConfigurationPolicyPrefStoreStringTest, SetValue) { 94 TEST_P(ConfigurationPolicyPrefStoreStringTest, SetValue) {
94 provider_.AddPolicy(GetParam().type(), 95 provider_.AddPolicy(GetParam().type(),
95 Value::CreateStringValue("http://chromium.org")); 96 Value::CreateStringValue("http://chromium.org"));
96 store_.OnUpdatePolicy(); 97 store_->OnUpdatePolicy();
97 Value* value; 98 Value* value;
98 EXPECT_EQ(PrefStore::READ_OK, 99 EXPECT_EQ(PrefStore::READ_OK,
99 store_.GetValue(GetParam().pref_name(), &value)); 100 store_->GetValue(GetParam().pref_name(), &value));
100 EXPECT_TRUE(StringValue("http://chromium.org").Equals(value)); 101 EXPECT_TRUE(StringValue("http://chromium.org").Equals(value));
101 } 102 }
102 103
103 INSTANTIATE_TEST_CASE_P( 104 INSTANTIATE_TEST_CASE_P(
104 ConfigurationPolicyPrefStoreStringTestInstance, 105 ConfigurationPolicyPrefStoreStringTestInstance,
105 ConfigurationPolicyPrefStoreStringTest, 106 ConfigurationPolicyPrefStoreStringTest,
106 testing::Values( 107 testing::Values(
107 TypeAndName(kPolicyHomePage, 108 TypeAndName(kPolicyHomePage,
108 prefs::kHomePage), 109 prefs::kHomePage),
109 TypeAndName(kPolicyApplicationLocale, 110 TypeAndName(kPolicyApplicationLocale,
(...skipping 10 matching lines...) Expand all
120 prefs::kGSSAPILibraryName))); 121 prefs::kGSSAPILibraryName)));
121 122
122 // Test cases for boolean-valued policy settings. 123 // Test cases for boolean-valued policy settings.
123 class ConfigurationPolicyPrefStoreBooleanTest 124 class ConfigurationPolicyPrefStoreBooleanTest
124 : public ConfigurationPolicyPrefStoreTestBase< 125 : public ConfigurationPolicyPrefStoreTestBase<
125 testing::TestWithParam<TypeAndName> > { 126 testing::TestWithParam<TypeAndName> > {
126 }; 127 };
127 128
128 TEST_P(ConfigurationPolicyPrefStoreBooleanTest, GetDefault) { 129 TEST_P(ConfigurationPolicyPrefStoreBooleanTest, GetDefault) {
129 EXPECT_EQ(PrefStore::READ_NO_VALUE, 130 EXPECT_EQ(PrefStore::READ_NO_VALUE,
130 store_.GetValue(GetParam().pref_name(), NULL)); 131 store_->GetValue(GetParam().pref_name(), NULL));
131 } 132 }
132 133
133 TEST_P(ConfigurationPolicyPrefStoreBooleanTest, SetValue) { 134 TEST_P(ConfigurationPolicyPrefStoreBooleanTest, SetValue) {
134 provider_.AddPolicy(GetParam().type(), Value::CreateBooleanValue(false)); 135 provider_.AddPolicy(GetParam().type(), Value::CreateBooleanValue(false));
135 store_.OnUpdatePolicy(); 136 store_->OnUpdatePolicy();
136 Value* value; 137 Value* value;
137 bool result = true; 138 bool result = true;
138 EXPECT_EQ(PrefStore::READ_OK, 139 EXPECT_EQ(PrefStore::READ_OK,
139 store_.GetValue(GetParam().pref_name(), &value)); 140 store_->GetValue(GetParam().pref_name(), &value));
140 EXPECT_TRUE(FundamentalValue(false).Equals(value)); 141 EXPECT_TRUE(FundamentalValue(false).Equals(value));
141 142
142 provider_.AddPolicy(GetParam().type(), Value::CreateBooleanValue(true)); 143 provider_.AddPolicy(GetParam().type(), Value::CreateBooleanValue(true));
143 store_.OnUpdatePolicy(); 144 store_->OnUpdatePolicy();
144 result = false; 145 result = false;
145 EXPECT_EQ(PrefStore::READ_OK, 146 EXPECT_EQ(PrefStore::READ_OK,
146 store_.GetValue(GetParam().pref_name(), &value)); 147 store_->GetValue(GetParam().pref_name(), &value));
147 EXPECT_TRUE(FundamentalValue(true).Equals(value)); 148 EXPECT_TRUE(FundamentalValue(true).Equals(value));
148 } 149 }
149 150
150 INSTANTIATE_TEST_CASE_P( 151 INSTANTIATE_TEST_CASE_P(
151 ConfigurationPolicyPrefStoreBooleanTestInstance, 152 ConfigurationPolicyPrefStoreBooleanTestInstance,
152 ConfigurationPolicyPrefStoreBooleanTest, 153 ConfigurationPolicyPrefStoreBooleanTest,
153 testing::Values( 154 testing::Values(
154 TypeAndName(kPolicyHomepageIsNewTabPage, 155 TypeAndName(kPolicyHomepageIsNewTabPage,
155 prefs::kHomePageIsNewTabPage), 156 prefs::kHomePageIsNewTabPage),
156 TypeAndName(kPolicyAlternateErrorPagesEnabled, 157 TypeAndName(kPolicyAlternateErrorPagesEnabled,
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 #endif // defined(OS_CHROMEOS) 197 #endif // defined(OS_CHROMEOS)
197 198
198 // Test cases for integer-valued policy settings. 199 // Test cases for integer-valued policy settings.
199 class ConfigurationPolicyPrefStoreIntegerTest 200 class ConfigurationPolicyPrefStoreIntegerTest
200 : public ConfigurationPolicyPrefStoreTestBase< 201 : public ConfigurationPolicyPrefStoreTestBase<
201 testing::TestWithParam<TypeAndName> > { 202 testing::TestWithParam<TypeAndName> > {
202 }; 203 };
203 204
204 TEST_P(ConfigurationPolicyPrefStoreIntegerTest, GetDefault) { 205 TEST_P(ConfigurationPolicyPrefStoreIntegerTest, GetDefault) {
205 EXPECT_EQ(PrefStore::READ_NO_VALUE, 206 EXPECT_EQ(PrefStore::READ_NO_VALUE,
206 store_.GetValue(GetParam().pref_name(), NULL)); 207 store_->GetValue(GetParam().pref_name(), NULL));
207 } 208 }
208 209
209 TEST_P(ConfigurationPolicyPrefStoreIntegerTest, SetValue) { 210 TEST_P(ConfigurationPolicyPrefStoreIntegerTest, SetValue) {
210 provider_.AddPolicy(GetParam().type(), Value::CreateIntegerValue(2)); 211 provider_.AddPolicy(GetParam().type(), Value::CreateIntegerValue(2));
211 store_.OnUpdatePolicy(); 212 store_->OnUpdatePolicy();
212 Value* value = NULL; 213 Value* value = NULL;
213 EXPECT_EQ(PrefStore::READ_OK, 214 EXPECT_EQ(PrefStore::READ_OK,
214 store_.GetValue(GetParam().pref_name(), &value)); 215 store_->GetValue(GetParam().pref_name(), &value));
215 EXPECT_TRUE(FundamentalValue(2).Equals(value)); 216 EXPECT_TRUE(FundamentalValue(2).Equals(value));
216 } 217 }
217 218
218 INSTANTIATE_TEST_CASE_P( 219 INSTANTIATE_TEST_CASE_P(
219 ConfigurationPolicyPrefStoreIntegerTestInstance, 220 ConfigurationPolicyPrefStoreIntegerTestInstance,
220 ConfigurationPolicyPrefStoreIntegerTest, 221 ConfigurationPolicyPrefStoreIntegerTest,
221 testing::Values( 222 testing::Values(
222 TypeAndName(kPolicyRestoreOnStartup, 223 TypeAndName(kPolicyRestoreOnStartup,
223 prefs::kRestoreOnStartup), 224 prefs::kRestoreOnStartup),
224 TypeAndName(kPolicyPolicyRefreshRate, 225 TypeAndName(kPolicyPolicyRefreshRate,
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
268 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ManualOptions) { 269 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ManualOptions) {
269 MockConfigurationPolicyProvider provider; 270 MockConfigurationPolicyProvider provider;
270 provider.AddPolicy(kPolicyProxyBypassList, 271 provider.AddPolicy(kPolicyProxyBypassList,
271 Value::CreateStringValue("http://chromium.org/override")); 272 Value::CreateStringValue("http://chromium.org/override"));
272 provider.AddPolicy(kPolicyProxyServer, 273 provider.AddPolicy(kPolicyProxyServer,
273 Value::CreateStringValue("chromium.org")); 274 Value::CreateStringValue("chromium.org"));
274 provider.AddPolicy(kPolicyProxyServerMode, 275 provider.AddPolicy(kPolicyProxyServerMode,
275 Value::CreateIntegerValue( 276 Value::CreateIntegerValue(
276 kPolicyManuallyConfiguredProxyServerMode)); 277 kPolicyManuallyConfiguredProxyServerMode));
277 278
278 ConfigurationPolicyPrefStore store(&provider); 279 scoped_refptr<ConfigurationPolicyPrefStore> store(
280 new ConfigurationPolicyPrefStore(&provider));
279 VerifyProxyPrefs( 281 VerifyProxyPrefs(
280 store, "chromium.org", "", "http://chromium.org/override", 282 *store, "chromium.org", "", "http://chromium.org/override",
281 ProxyPrefs::MODE_FIXED_SERVERS); 283 ProxyPrefs::MODE_FIXED_SERVERS);
282 } 284 }
283 285
284 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ManualOptionsReversedApplyOrder) { 286 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ManualOptionsReversedApplyOrder) {
285 MockConfigurationPolicyProvider provider; 287 MockConfigurationPolicyProvider provider;
286 provider.AddPolicy(kPolicyProxyServerMode, 288 provider.AddPolicy(kPolicyProxyServerMode,
287 Value::CreateIntegerValue( 289 Value::CreateIntegerValue(
288 kPolicyManuallyConfiguredProxyServerMode)); 290 kPolicyManuallyConfiguredProxyServerMode));
289 provider.AddPolicy(kPolicyProxyBypassList, 291 provider.AddPolicy(kPolicyProxyBypassList,
290 Value::CreateStringValue("http://chromium.org/override")); 292 Value::CreateStringValue("http://chromium.org/override"));
291 provider.AddPolicy(kPolicyProxyServer, 293 provider.AddPolicy(kPolicyProxyServer,
292 Value::CreateStringValue("chromium.org")); 294 Value::CreateStringValue("chromium.org"));
293 295 scoped_refptr<ConfigurationPolicyPrefStore> store(
294 ConfigurationPolicyPrefStore store(&provider); 296 new ConfigurationPolicyPrefStore(&provider));
295 VerifyProxyPrefs( 297 VerifyProxyPrefs(
296 store, "chromium.org", "", "http://chromium.org/override", 298 *store, "chromium.org", "", "http://chromium.org/override",
297 ProxyPrefs::MODE_FIXED_SERVERS); 299 ProxyPrefs::MODE_FIXED_SERVERS);
298 } 300 }
299 301
300 TEST_F(ConfigurationPolicyPrefStoreProxyTest, NoProxyServerMode) { 302 TEST_F(ConfigurationPolicyPrefStoreProxyTest, NoProxyServerMode) {
301 MockConfigurationPolicyProvider provider; 303 MockConfigurationPolicyProvider provider;
302 provider.AddPolicy(kPolicyProxyServerMode, 304 provider.AddPolicy(kPolicyProxyServerMode,
303 Value::CreateIntegerValue(kPolicyNoProxyServerMode)); 305 Value::CreateIntegerValue(kPolicyNoProxyServerMode));
304 306
305 ConfigurationPolicyPrefStore store(&provider); 307 scoped_refptr<ConfigurationPolicyPrefStore> store(
306 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_DIRECT); 308 new ConfigurationPolicyPrefStore(&provider));
309 VerifyProxyPrefs(*store, "", "", "", ProxyPrefs::MODE_DIRECT);
307 } 310 }
308 311
309 TEST_F(ConfigurationPolicyPrefStoreProxyTest, NoProxyModeName) { 312 TEST_F(ConfigurationPolicyPrefStoreProxyTest, NoProxyModeName) {
310 MockConfigurationPolicyProvider provider; 313 MockConfigurationPolicyProvider provider;
311 provider.AddPolicy( 314 provider.AddPolicy(
312 kPolicyProxyMode, 315 kPolicyProxyMode,
313 Value::CreateStringValue(ProxyPrefs::kDirectProxyModeName)); 316 Value::CreateStringValue(ProxyPrefs::kDirectProxyModeName));
314 317
315 ConfigurationPolicyPrefStore store(&provider); 318 scoped_refptr<ConfigurationPolicyPrefStore> store(
316 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_DIRECT); 319 new ConfigurationPolicyPrefStore(&provider));
320 VerifyProxyPrefs(*store, "", "", "", ProxyPrefs::MODE_DIRECT);
317 } 321 }
318 322
319 TEST_F(ConfigurationPolicyPrefStoreProxyTest, AutoDetectProxyServerMode) { 323 TEST_F(ConfigurationPolicyPrefStoreProxyTest, AutoDetectProxyServerMode) {
320 MockConfigurationPolicyProvider provider; 324 MockConfigurationPolicyProvider provider;
321 provider.AddPolicy( 325 provider.AddPolicy(
322 kPolicyProxyServerMode, 326 kPolicyProxyServerMode,
323 Value::CreateIntegerValue(kPolicyAutoDetectProxyServerMode)); 327 Value::CreateIntegerValue(kPolicyAutoDetectProxyServerMode));
324 328
325 ConfigurationPolicyPrefStore store(&provider); 329 scoped_refptr<ConfigurationPolicyPrefStore> store(
326 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_AUTO_DETECT); 330 new ConfigurationPolicyPrefStore(&provider));
331 VerifyProxyPrefs(*store, "", "", "", ProxyPrefs::MODE_AUTO_DETECT);
327 } 332 }
328 333
329 TEST_F(ConfigurationPolicyPrefStoreProxyTest, AutoDetectProxyModeName) { 334 TEST_F(ConfigurationPolicyPrefStoreProxyTest, AutoDetectProxyModeName) {
330 MockConfigurationPolicyProvider provider; 335 MockConfigurationPolicyProvider provider;
331 provider.AddPolicy( 336 provider.AddPolicy(
332 kPolicyProxyMode, 337 kPolicyProxyMode,
333 Value::CreateStringValue(ProxyPrefs::kAutoDetectProxyModeName)); 338 Value::CreateStringValue(ProxyPrefs::kAutoDetectProxyModeName));
334 339
335 ConfigurationPolicyPrefStore store(&provider); 340 scoped_refptr<ConfigurationPolicyPrefStore> store(
336 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_AUTO_DETECT); 341 new ConfigurationPolicyPrefStore(&provider));
342 VerifyProxyPrefs(*store, "", "", "", ProxyPrefs::MODE_AUTO_DETECT);
337 } 343 }
338 344
339 TEST_F(ConfigurationPolicyPrefStoreProxyTest, PacScriptProxyMode) { 345 TEST_F(ConfigurationPolicyPrefStoreProxyTest, PacScriptProxyMode) {
340 MockConfigurationPolicyProvider provider; 346 MockConfigurationPolicyProvider provider;
341 provider.AddPolicy(kPolicyProxyPacUrl, 347 provider.AddPolicy(kPolicyProxyPacUrl,
342 Value::CreateStringValue("http://short.org/proxy.pac")); 348 Value::CreateStringValue("http://short.org/proxy.pac"));
343 provider.AddPolicy( 349 provider.AddPolicy(
344 kPolicyProxyMode, 350 kPolicyProxyMode,
345 Value::CreateStringValue(ProxyPrefs::kPacScriptProxyModeName)); 351 Value::CreateStringValue(ProxyPrefs::kPacScriptProxyModeName));
346 352
347 ConfigurationPolicyPrefStore store(&provider); 353 scoped_refptr<ConfigurationPolicyPrefStore> store(
348 VerifyProxyPrefs( 354 new ConfigurationPolicyPrefStore(&provider));
349 store, "", "http://short.org/proxy.pac", "", ProxyPrefs::MODE_PAC_SCRIPT); 355 VerifyProxyPrefs(*store, "", "http://short.org/proxy.pac", "",
356 ProxyPrefs::MODE_PAC_SCRIPT);
350 } 357 }
351 358
352 TEST_F(ConfigurationPolicyPrefStoreProxyTest, UseSystemProxyServerMode) { 359 TEST_F(ConfigurationPolicyPrefStoreProxyTest, UseSystemProxyServerMode) {
353 MockConfigurationPolicyProvider provider; 360 MockConfigurationPolicyProvider provider;
354 provider.AddPolicy( 361 provider.AddPolicy(
355 kPolicyProxyServerMode, 362 kPolicyProxyServerMode,
356 Value::CreateIntegerValue(kPolicyUseSystemProxyServerMode)); 363 Value::CreateIntegerValue(kPolicyUseSystemProxyServerMode));
357 364
358 ConfigurationPolicyPrefStore store(&provider); 365 scoped_refptr<ConfigurationPolicyPrefStore> store(
359 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_SYSTEM); 366 new ConfigurationPolicyPrefStore(&provider));
367 VerifyProxyPrefs(*store, "", "", "", ProxyPrefs::MODE_SYSTEM);
360 } 368 }
361 369
362 TEST_F(ConfigurationPolicyPrefStoreProxyTest, UseSystemProxyMode) { 370 TEST_F(ConfigurationPolicyPrefStoreProxyTest, UseSystemProxyMode) {
363 MockConfigurationPolicyProvider provider; 371 MockConfigurationPolicyProvider provider;
364 provider.AddPolicy( 372 provider.AddPolicy(
365 kPolicyProxyMode, 373 kPolicyProxyMode,
366 Value::CreateStringValue(ProxyPrefs::kSystemProxyModeName)); 374 Value::CreateStringValue(ProxyPrefs::kSystemProxyModeName));
367 375
368 ConfigurationPolicyPrefStore store(&provider); 376 scoped_refptr<ConfigurationPolicyPrefStore> store(
369 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_SYSTEM); 377 new ConfigurationPolicyPrefStore(&provider));
378 VerifyProxyPrefs(*store, "", "", "", ProxyPrefs::MODE_SYSTEM);
370 } 379 }
371 380
372 TEST_F(ConfigurationPolicyPrefStoreProxyTest, 381 TEST_F(ConfigurationPolicyPrefStoreProxyTest,
373 ProxyModeOverridesProxyServerMode) { 382 ProxyModeOverridesProxyServerMode) {
374 MockConfigurationPolicyProvider provider; 383 MockConfigurationPolicyProvider provider;
375 provider.AddPolicy(kPolicyProxyServerMode, 384 provider.AddPolicy(kPolicyProxyServerMode,
376 Value::CreateIntegerValue(kPolicyNoProxyServerMode)); 385 Value::CreateIntegerValue(kPolicyNoProxyServerMode));
377 provider.AddPolicy( 386 provider.AddPolicy(
378 kPolicyProxyMode, 387 kPolicyProxyMode,
379 Value::CreateStringValue(ProxyPrefs::kAutoDetectProxyModeName)); 388 Value::CreateStringValue(ProxyPrefs::kAutoDetectProxyModeName));
380 389
381 ConfigurationPolicyPrefStore store(&provider); 390 scoped_refptr<ConfigurationPolicyPrefStore> store(
382 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_AUTO_DETECT); 391 new ConfigurationPolicyPrefStore(&provider));
392 VerifyProxyPrefs(*store, "", "", "", ProxyPrefs::MODE_AUTO_DETECT);
383 } 393 }
384 394
385 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ProxyInvalid) { 395 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ProxyInvalid) {
386 for (int i = 0; i < MODE_COUNT; ++i) { 396 for (int i = 0; i < MODE_COUNT; ++i) {
387 MockConfigurationPolicyProvider provider; 397 MockConfigurationPolicyProvider provider;
388 provider.AddPolicy(kPolicyProxyServerMode, Value::CreateIntegerValue(i)); 398 provider.AddPolicy(kPolicyProxyServerMode, Value::CreateIntegerValue(i));
389 // No mode expects all three parameters being set. 399 // No mode expects all three parameters being set.
390 provider.AddPolicy(kPolicyProxyPacUrl, 400 provider.AddPolicy(kPolicyProxyPacUrl,
391 Value::CreateStringValue("http://short.org/proxy.pac")); 401 Value::CreateStringValue("http://short.org/proxy.pac"));
392 provider.AddPolicy(kPolicyProxyBypassList, 402 provider.AddPolicy(kPolicyProxyBypassList,
393 Value::CreateStringValue( 403 Value::CreateStringValue(
394 "http://chromium.org/override")); 404 "http://chromium.org/override"));
395 provider.AddPolicy(kPolicyProxyServer, 405 provider.AddPolicy(kPolicyProxyServer,
396 Value::CreateStringValue("chromium.org")); 406 Value::CreateStringValue("chromium.org"));
397 407
398 ConfigurationPolicyPrefStore store(&provider); 408 scoped_refptr<ConfigurationPolicyPrefStore> store(
409 new ConfigurationPolicyPrefStore(&provider));
399 EXPECT_EQ(PrefStore::READ_NO_VALUE, 410 EXPECT_EQ(PrefStore::READ_NO_VALUE,
400 store.GetValue(prefs::kProxyMode, NULL)); 411 store->GetValue(prefs::kProxyMode, NULL));
401 } 412 }
402 } 413 }
403 414
404 class ConfigurationPolicyPrefStoreDefaultSearchTest : public testing::Test { 415 class ConfigurationPolicyPrefStoreDefaultSearchTest : public testing::Test {
405 }; 416 };
406 417
407 // Checks that if the policy for default search is valid, i.e. there's a 418 // Checks that if the policy for default search is valid, i.e. there's a
408 // search URL, that all the elements have been given proper defaults. 419 // search URL, that all the elements have been given proper defaults.
409 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, MinimallyDefined) { 420 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, MinimallyDefined) {
410 const char* const search_url = "http://test.com/search?t={searchTerms}"; 421 const char* const search_url = "http://test.com/search?t={searchTerms}";
411 MockConfigurationPolicyProvider provider; 422 MockConfigurationPolicyProvider provider;
412 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, 423 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled,
413 Value::CreateBooleanValue(true)); 424 Value::CreateBooleanValue(true));
414 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL, 425 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL,
415 Value::CreateStringValue(search_url)); 426 Value::CreateStringValue(search_url));
416 427
417 ConfigurationPolicyPrefStore store(&provider); 428 scoped_refptr<ConfigurationPolicyPrefStore> store(
429 new ConfigurationPolicyPrefStore(&provider));
418 430
419 Value* value = NULL; 431 Value* value = NULL;
420 EXPECT_EQ(PrefStore::READ_OK, 432 EXPECT_EQ(PrefStore::READ_OK,
421 store.GetValue(prefs::kDefaultSearchProviderSearchURL, &value)); 433 store->GetValue(prefs::kDefaultSearchProviderSearchURL, &value));
422 EXPECT_TRUE(StringValue(search_url).Equals(value)); 434 EXPECT_TRUE(StringValue(search_url).Equals(value));
423 435
424 EXPECT_EQ(PrefStore::READ_OK, 436 EXPECT_EQ(PrefStore::READ_OK,
425 store.GetValue(prefs::kDefaultSearchProviderName, &value)); 437 store->GetValue(prefs::kDefaultSearchProviderName, &value));
426 EXPECT_TRUE(StringValue("test.com").Equals(value)); 438 EXPECT_TRUE(StringValue("test.com").Equals(value));
427 439
428 EXPECT_EQ(PrefStore::READ_OK, 440 EXPECT_EQ(PrefStore::READ_OK,
429 store.GetValue(prefs::kDefaultSearchProviderKeyword, &value)); 441 store->GetValue(prefs::kDefaultSearchProviderKeyword, &value));
430 EXPECT_TRUE(StringValue(std::string()).Equals(value)); 442 EXPECT_TRUE(StringValue(std::string()).Equals(value));
431 443
432 EXPECT_EQ(PrefStore::READ_OK, 444 EXPECT_EQ(PrefStore::READ_OK,
433 store.GetValue(prefs::kDefaultSearchProviderSuggestURL, &value)); 445 store->GetValue(prefs::kDefaultSearchProviderSuggestURL, &value));
434 EXPECT_TRUE(StringValue(std::string()).Equals(value)); 446 EXPECT_TRUE(StringValue(std::string()).Equals(value));
435 447
436 EXPECT_EQ(PrefStore::READ_OK, 448 EXPECT_EQ(PrefStore::READ_OK,
437 store.GetValue(prefs::kDefaultSearchProviderIconURL, &value)); 449 store->GetValue(prefs::kDefaultSearchProviderIconURL, &value));
438 EXPECT_TRUE(StringValue(std::string()).Equals(value)); 450 EXPECT_TRUE(StringValue(std::string()).Equals(value));
439 451
440 EXPECT_EQ(PrefStore::READ_OK, 452 EXPECT_EQ(PrefStore::READ_OK,
441 store.GetValue(prefs::kDefaultSearchProviderEncodings, &value)); 453 store->GetValue(prefs::kDefaultSearchProviderEncodings, &value));
442 EXPECT_TRUE(StringValue(std::string()).Equals(value)); 454 EXPECT_TRUE(StringValue(std::string()).Equals(value));
443 455
444 EXPECT_EQ(PrefStore::READ_OK, 456 EXPECT_EQ(PrefStore::READ_OK,
445 store.GetValue(prefs::kDefaultSearchProviderInstantURL, &value)); 457 store->GetValue(prefs::kDefaultSearchProviderInstantURL, &value));
446 EXPECT_TRUE(StringValue(std::string()).Equals(value)); 458 EXPECT_TRUE(StringValue(std::string()).Equals(value));
447 } 459 }
448 460
449 // Checks that for a fully defined search policy, all elements have been 461 // Checks that for a fully defined search policy, all elements have been
450 // read properly. 462 // read properly.
451 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, FullyDefined) { 463 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, FullyDefined) {
452 const char* const search_url = "http://test.com/search?t={searchTerms}"; 464 const char* const search_url = "http://test.com/search?t={searchTerms}";
453 const char* const suggest_url = "http://test.com/sugg?={searchTerms}"; 465 const char* const suggest_url = "http://test.com/sugg?={searchTerms}";
454 const char* const icon_url = "http://test.com/icon.jpg"; 466 const char* const icon_url = "http://test.com/icon.jpg";
455 const char* const name = "MyName"; 467 const char* const name = "MyName";
456 const char* const keyword = "MyKeyword"; 468 const char* const keyword = "MyKeyword";
457 const char* const encodings = "UTF-16;UTF-8"; 469 const char* const encodings = "UTF-16;UTF-8";
458 MockConfigurationPolicyProvider provider; 470 MockConfigurationPolicyProvider provider;
459 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, 471 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled,
460 Value::CreateBooleanValue(true)); 472 Value::CreateBooleanValue(true));
461 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL, 473 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL,
462 Value::CreateStringValue(search_url)); 474 Value::CreateStringValue(search_url));
463 provider.AddPolicy(kPolicyDefaultSearchProviderName, 475 provider.AddPolicy(kPolicyDefaultSearchProviderName,
464 Value::CreateStringValue(name)); 476 Value::CreateStringValue(name));
465 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, 477 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword,
466 Value::CreateStringValue(keyword)); 478 Value::CreateStringValue(keyword));
467 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, 479 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL,
468 Value::CreateStringValue(suggest_url)); 480 Value::CreateStringValue(suggest_url));
469 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, 481 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL,
470 Value::CreateStringValue(icon_url)); 482 Value::CreateStringValue(icon_url));
471 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, 483 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings,
472 Value::CreateStringValue(encodings)); 484 Value::CreateStringValue(encodings));
473 485
474 ConfigurationPolicyPrefStore store(&provider); 486 scoped_refptr<ConfigurationPolicyPrefStore> store(
487 new ConfigurationPolicyPrefStore(&provider));
475 488
476 Value* value = NULL; 489 Value* value = NULL;
477 EXPECT_EQ(PrefStore::READ_OK, 490 EXPECT_EQ(PrefStore::READ_OK,
478 store.GetValue(prefs::kDefaultSearchProviderSearchURL, &value)); 491 store->GetValue(prefs::kDefaultSearchProviderSearchURL, &value));
479 EXPECT_TRUE(StringValue(search_url).Equals(value)); 492 EXPECT_TRUE(StringValue(search_url).Equals(value));
480 493
481 EXPECT_EQ(PrefStore::READ_OK, 494 EXPECT_EQ(PrefStore::READ_OK,
482 store.GetValue(prefs::kDefaultSearchProviderName, &value)); 495 store->GetValue(prefs::kDefaultSearchProviderName, &value));
483 EXPECT_TRUE(StringValue(name).Equals(value)); 496 EXPECT_TRUE(StringValue(name).Equals(value));
484 497
485 EXPECT_EQ(PrefStore::READ_OK, 498 EXPECT_EQ(PrefStore::READ_OK,
486 store.GetValue(prefs::kDefaultSearchProviderKeyword, &value)); 499 store->GetValue(prefs::kDefaultSearchProviderKeyword, &value));
487 EXPECT_TRUE(StringValue(keyword).Equals(value)); 500 EXPECT_TRUE(StringValue(keyword).Equals(value));
488 501
489 EXPECT_EQ(PrefStore::READ_OK, 502 EXPECT_EQ(PrefStore::READ_OK,
490 store.GetValue(prefs::kDefaultSearchProviderSuggestURL, &value)); 503 store->GetValue(prefs::kDefaultSearchProviderSuggestURL, &value));
491 EXPECT_TRUE(StringValue(suggest_url).Equals(value)); 504 EXPECT_TRUE(StringValue(suggest_url).Equals(value));
492 505
493 EXPECT_EQ(PrefStore::READ_OK, 506 EXPECT_EQ(PrefStore::READ_OK,
494 store.GetValue(prefs::kDefaultSearchProviderIconURL, &value)); 507 store->GetValue(prefs::kDefaultSearchProviderIconURL, &value));
495 EXPECT_TRUE(StringValue(icon_url).Equals(value)); 508 EXPECT_TRUE(StringValue(icon_url).Equals(value));
496 509
497 EXPECT_EQ(PrefStore::READ_OK, 510 EXPECT_EQ(PrefStore::READ_OK,
498 store.GetValue(prefs::kDefaultSearchProviderEncodings, &value)); 511 store->GetValue(prefs::kDefaultSearchProviderEncodings, &value));
499 EXPECT_TRUE(StringValue(encodings).Equals(value)); 512 EXPECT_TRUE(StringValue(encodings).Equals(value));
500 } 513 }
501 514
502 // Checks that if the default search policy is missing, that no elements of the 515 // Checks that if the default search policy is missing, that no elements of the
503 // default search policy will be present. 516 // default search policy will be present.
504 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, MissingUrl) { 517 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, MissingUrl) {
505 const char* const suggest_url = "http://test.com/sugg?t={searchTerms}"; 518 const char* const suggest_url = "http://test.com/sugg?t={searchTerms}";
506 const char* const icon_url = "http://test.com/icon.jpg"; 519 const char* const icon_url = "http://test.com/icon.jpg";
507 const char* const name = "MyName"; 520 const char* const name = "MyName";
508 const char* const keyword = "MyKeyword"; 521 const char* const keyword = "MyKeyword";
509 const char* const encodings = "UTF-16;UTF-8"; 522 const char* const encodings = "UTF-16;UTF-8";
510 MockConfigurationPolicyProvider provider; 523 MockConfigurationPolicyProvider provider;
511 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, 524 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled,
512 Value::CreateBooleanValue(true)); 525 Value::CreateBooleanValue(true));
513 provider.AddPolicy(kPolicyDefaultSearchProviderName, 526 provider.AddPolicy(kPolicyDefaultSearchProviderName,
514 Value::CreateStringValue(name)); 527 Value::CreateStringValue(name));
515 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, 528 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword,
516 Value::CreateStringValue(keyword)); 529 Value::CreateStringValue(keyword));
517 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, 530 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL,
518 Value::CreateStringValue(suggest_url)); 531 Value::CreateStringValue(suggest_url));
519 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, 532 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL,
520 Value::CreateStringValue(icon_url)); 533 Value::CreateStringValue(icon_url));
521 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, 534 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings,
522 Value::CreateStringValue(encodings)); 535 Value::CreateStringValue(encodings));
523 536
524 ConfigurationPolicyPrefStore store(&provider); 537 scoped_refptr<ConfigurationPolicyPrefStore> store(
538 new ConfigurationPolicyPrefStore(&provider));
525 539
526 EXPECT_EQ(PrefStore::READ_NO_VALUE, 540 EXPECT_EQ(PrefStore::READ_NO_VALUE,
527 store.GetValue(prefs::kDefaultSearchProviderSearchURL, NULL)); 541 store->GetValue(prefs::kDefaultSearchProviderSearchURL, NULL));
528 EXPECT_EQ(PrefStore::READ_NO_VALUE, 542 EXPECT_EQ(PrefStore::READ_NO_VALUE,
529 store.GetValue(prefs::kDefaultSearchProviderName, NULL)); 543 store->GetValue(prefs::kDefaultSearchProviderName, NULL));
530 EXPECT_EQ(PrefStore::READ_NO_VALUE, 544 EXPECT_EQ(PrefStore::READ_NO_VALUE,
531 store.GetValue(prefs::kDefaultSearchProviderKeyword, NULL)); 545 store->GetValue(prefs::kDefaultSearchProviderKeyword, NULL));
532 EXPECT_EQ(PrefStore::READ_NO_VALUE, 546 EXPECT_EQ(PrefStore::READ_NO_VALUE,
533 store.GetValue(prefs::kDefaultSearchProviderSuggestURL, NULL)); 547 store->GetValue(prefs::kDefaultSearchProviderSuggestURL, NULL));
534 EXPECT_EQ(PrefStore::READ_NO_VALUE, 548 EXPECT_EQ(PrefStore::READ_NO_VALUE,
535 store.GetValue(prefs::kDefaultSearchProviderIconURL, NULL)); 549 store->GetValue(prefs::kDefaultSearchProviderIconURL, NULL));
536 EXPECT_EQ(PrefStore::READ_NO_VALUE, 550 EXPECT_EQ(PrefStore::READ_NO_VALUE,
537 store.GetValue(prefs::kDefaultSearchProviderEncodings, NULL)); 551 store->GetValue(prefs::kDefaultSearchProviderEncodings, NULL));
538 } 552 }
539 553
540 // Checks that if the default search policy is invalid, that no elements of the 554 // Checks that if the default search policy is invalid, that no elements of the
541 // default search policy will be present. 555 // default search policy will be present.
542 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, Invalid) { 556 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, Invalid) {
543 const char* const bad_search_url = "http://test.com/noSearchTerms"; 557 const char* const bad_search_url = "http://test.com/noSearchTerms";
544 const char* const suggest_url = "http://test.com/sugg?t={searchTerms}"; 558 const char* const suggest_url = "http://test.com/sugg?t={searchTerms}";
545 const char* const icon_url = "http://test.com/icon.jpg"; 559 const char* const icon_url = "http://test.com/icon.jpg";
546 const char* const name = "MyName"; 560 const char* const name = "MyName";
547 const char* const keyword = "MyKeyword"; 561 const char* const keyword = "MyKeyword";
548 const char* const encodings = "UTF-16;UTF-8"; 562 const char* const encodings = "UTF-16;UTF-8";
549 MockConfigurationPolicyProvider provider; 563 MockConfigurationPolicyProvider provider;
550 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, 564 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled,
551 Value::CreateBooleanValue(true)); 565 Value::CreateBooleanValue(true));
552 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL, 566 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL,
553 Value::CreateStringValue(bad_search_url)); 567 Value::CreateStringValue(bad_search_url));
554 provider.AddPolicy(kPolicyDefaultSearchProviderName, 568 provider.AddPolicy(kPolicyDefaultSearchProviderName,
555 Value::CreateStringValue(name)); 569 Value::CreateStringValue(name));
556 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, 570 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword,
557 Value::CreateStringValue(keyword)); 571 Value::CreateStringValue(keyword));
558 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, 572 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL,
559 Value::CreateStringValue(suggest_url)); 573 Value::CreateStringValue(suggest_url));
560 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, 574 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL,
561 Value::CreateStringValue(icon_url)); 575 Value::CreateStringValue(icon_url));
562 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, 576 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings,
563 Value::CreateStringValue(encodings)); 577 Value::CreateStringValue(encodings));
564 578
565 ConfigurationPolicyPrefStore store(&provider); 579 scoped_refptr<ConfigurationPolicyPrefStore> store(
580 new ConfigurationPolicyPrefStore(&provider));
566 581
567 EXPECT_EQ(PrefStore::READ_NO_VALUE, 582 EXPECT_EQ(PrefStore::READ_NO_VALUE,
568 store.GetValue(prefs::kDefaultSearchProviderSearchURL, NULL)); 583 store->GetValue(prefs::kDefaultSearchProviderSearchURL, NULL));
569 EXPECT_EQ(PrefStore::READ_NO_VALUE, 584 EXPECT_EQ(PrefStore::READ_NO_VALUE,
570 store.GetValue(prefs::kDefaultSearchProviderName, NULL)); 585 store->GetValue(prefs::kDefaultSearchProviderName, NULL));
571 EXPECT_EQ(PrefStore::READ_NO_VALUE, 586 EXPECT_EQ(PrefStore::READ_NO_VALUE,
572 store.GetValue(prefs::kDefaultSearchProviderKeyword, NULL)); 587 store->GetValue(prefs::kDefaultSearchProviderKeyword, NULL));
573 EXPECT_EQ(PrefStore::READ_NO_VALUE, 588 EXPECT_EQ(PrefStore::READ_NO_VALUE,
574 store.GetValue(prefs::kDefaultSearchProviderSuggestURL, NULL)); 589 store->GetValue(prefs::kDefaultSearchProviderSuggestURL, NULL));
575 EXPECT_EQ(PrefStore::READ_NO_VALUE, 590 EXPECT_EQ(PrefStore::READ_NO_VALUE,
576 store.GetValue(prefs::kDefaultSearchProviderIconURL, NULL)); 591 store->GetValue(prefs::kDefaultSearchProviderIconURL, NULL));
577 EXPECT_EQ(PrefStore::READ_NO_VALUE, 592 EXPECT_EQ(PrefStore::READ_NO_VALUE,
578 store.GetValue(prefs::kDefaultSearchProviderEncodings, NULL)); 593 store->GetValue(prefs::kDefaultSearchProviderEncodings, NULL));
579 } 594 }
580 595
581 // Test cases for the Sync policy setting. 596 // Test cases for the Sync policy setting.
582 class ConfigurationPolicyPrefStoreSyncTest 597 class ConfigurationPolicyPrefStoreSyncTest
583 : public ConfigurationPolicyPrefStoreTestBase<testing::Test> { 598 : public ConfigurationPolicyPrefStoreTestBase<testing::Test> {
584 }; 599 };
585 600
586 TEST_F(ConfigurationPolicyPrefStoreSyncTest, Default) { 601 TEST_F(ConfigurationPolicyPrefStoreSyncTest, Default) {
587 EXPECT_EQ(PrefStore::READ_NO_VALUE, 602 EXPECT_EQ(PrefStore::READ_NO_VALUE,
588 store_.GetValue(prefs::kSyncManaged, NULL)); 603 store_->GetValue(prefs::kSyncManaged, NULL));
589 } 604 }
590 605
591 TEST_F(ConfigurationPolicyPrefStoreSyncTest, Enabled) { 606 TEST_F(ConfigurationPolicyPrefStoreSyncTest, Enabled) {
592 provider_.AddPolicy(kPolicySyncDisabled, Value::CreateBooleanValue(false)); 607 provider_.AddPolicy(kPolicySyncDisabled, Value::CreateBooleanValue(false));
593 store_.OnUpdatePolicy(); 608 store_->OnUpdatePolicy();
594 // Enabling Sync should not set the pref. 609 // Enabling Sync should not set the pref.
595 EXPECT_EQ(PrefStore::READ_NO_VALUE, 610 EXPECT_EQ(PrefStore::READ_NO_VALUE,
596 store_.GetValue(prefs::kSyncManaged, NULL)); 611 store_->GetValue(prefs::kSyncManaged, NULL));
597 } 612 }
598 613
599 TEST_F(ConfigurationPolicyPrefStoreSyncTest, Disabled) { 614 TEST_F(ConfigurationPolicyPrefStoreSyncTest, Disabled) {
600 provider_.AddPolicy(kPolicySyncDisabled, Value::CreateBooleanValue(true)); 615 provider_.AddPolicy(kPolicySyncDisabled, Value::CreateBooleanValue(true));
601 store_.OnUpdatePolicy(); 616 store_->OnUpdatePolicy();
602 // Sync should be flagged as managed. 617 // Sync should be flagged as managed.
603 Value* value = NULL; 618 Value* value = NULL;
604 EXPECT_EQ(PrefStore::READ_OK, store_.GetValue(prefs::kSyncManaged, &value)); 619 EXPECT_EQ(PrefStore::READ_OK, store_->GetValue(prefs::kSyncManaged, &value));
605 ASSERT_TRUE(value != NULL); 620 ASSERT_TRUE(value != NULL);
606 EXPECT_TRUE(FundamentalValue(true).Equals(value)); 621 EXPECT_TRUE(FundamentalValue(true).Equals(value));
607 } 622 }
608 623
609 // Test cases for the AutoFill policy setting. 624 // Test cases for the AutoFill policy setting.
610 class ConfigurationPolicyPrefStoreAutoFillTest 625 class ConfigurationPolicyPrefStoreAutoFillTest
611 : public ConfigurationPolicyPrefStoreTestBase<testing::Test> { 626 : public ConfigurationPolicyPrefStoreTestBase<testing::Test> {
612 }; 627 };
613 628
614 TEST_F(ConfigurationPolicyPrefStoreAutoFillTest, Default) { 629 TEST_F(ConfigurationPolicyPrefStoreAutoFillTest, Default) {
615 EXPECT_EQ(PrefStore::READ_NO_VALUE, 630 EXPECT_EQ(PrefStore::READ_NO_VALUE,
616 store_.GetValue(prefs::kSyncManaged, NULL)); 631 store_->GetValue(prefs::kSyncManaged, NULL));
617 } 632 }
618 633
619 TEST_F(ConfigurationPolicyPrefStoreAutoFillTest, Enabled) { 634 TEST_F(ConfigurationPolicyPrefStoreAutoFillTest, Enabled) {
620 provider_.AddPolicy(kPolicyAutoFillEnabled, Value::CreateBooleanValue(true)); 635 provider_.AddPolicy(kPolicyAutoFillEnabled, Value::CreateBooleanValue(true));
621 store_.OnUpdatePolicy(); 636 store_->OnUpdatePolicy();
622 // Enabling AutoFill should not set the pref. 637 // Enabling AutoFill should not set the pref.
623 EXPECT_EQ(PrefStore::READ_NO_VALUE, 638 EXPECT_EQ(PrefStore::READ_NO_VALUE,
624 store_.GetValue(prefs::kSyncManaged, NULL)); 639 store_->GetValue(prefs::kSyncManaged, NULL));
625 } 640 }
626 641
627 TEST_F(ConfigurationPolicyPrefStoreAutoFillTest, Disabled) { 642 TEST_F(ConfigurationPolicyPrefStoreAutoFillTest, Disabled) {
628 provider_.AddPolicy(kPolicyAutoFillEnabled, Value::CreateBooleanValue(false)); 643 provider_.AddPolicy(kPolicyAutoFillEnabled, Value::CreateBooleanValue(false));
629 store_.OnUpdatePolicy(); 644 store_->OnUpdatePolicy();
630 // Disabling AutoFill should switch the pref to managed. 645 // Disabling AutoFill should switch the pref to managed.
631 Value* value = NULL; 646 Value* value = NULL;
632 EXPECT_EQ(PrefStore::READ_OK, 647 EXPECT_EQ(PrefStore::READ_OK,
633 store_.GetValue(prefs::kAutoFillEnabled, &value)); 648 store_->GetValue(prefs::kAutoFillEnabled, &value));
634 EXPECT_TRUE(FundamentalValue(false).Equals(value)); 649 EXPECT_TRUE(FundamentalValue(false).Equals(value));
635 } 650 }
636 651
637 // Exercises the policy refresh mechanism. 652 // Exercises the policy refresh mechanism.
638 class ConfigurationPolicyPrefStoreRefreshTest 653 class ConfigurationPolicyPrefStoreRefreshTest
639 : public ConfigurationPolicyPrefStoreTestBase<testing::Test> { 654 : public ConfigurationPolicyPrefStoreTestBase<testing::Test> {
640 protected: 655 protected:
641 virtual void SetUp() { 656 virtual void SetUp() {
642 store_.AddObserver(&observer_); 657 store_->AddObserver(&observer_);
643 } 658 }
644 659
645 virtual void TearDown() { 660 virtual void TearDown() {
646 store_.RemoveObserver(&observer_); 661 store_->RemoveObserver(&observer_);
647 } 662 }
648 663
649 PrefStoreObserverMock observer_; 664 PrefStoreObserverMock observer_;
650 }; 665 };
651 666
652 TEST_F(ConfigurationPolicyPrefStoreRefreshTest, Refresh) { 667 TEST_F(ConfigurationPolicyPrefStoreRefreshTest, Refresh) {
653 Value* value = NULL; 668 Value* value = NULL;
654 EXPECT_EQ(PrefStore::READ_NO_VALUE, 669 EXPECT_EQ(PrefStore::READ_NO_VALUE,
655 store_.GetValue(prefs::kHomePage, NULL)); 670 store_->GetValue(prefs::kHomePage, NULL));
656 671
657 EXPECT_CALL(observer_, OnPrefValueChanged(prefs::kHomePage)).Times(1); 672 EXPECT_CALL(observer_, OnPrefValueChanged(prefs::kHomePage)).Times(1);
658 provider_.AddPolicy(kPolicyHomePage, 673 provider_.AddPolicy(kPolicyHomePage,
659 Value::CreateStringValue("http://www.chromium.org")); 674 Value::CreateStringValue("http://www.chromium.org"));
660 store_.OnUpdatePolicy(); 675 store_->OnUpdatePolicy();
661 Mock::VerifyAndClearExpectations(&observer_); 676 Mock::VerifyAndClearExpectations(&observer_);
662 EXPECT_EQ(PrefStore::READ_OK, 677 EXPECT_EQ(PrefStore::READ_OK,
663 store_.GetValue(prefs::kHomePage, &value)); 678 store_->GetValue(prefs::kHomePage, &value));
664 EXPECT_TRUE(StringValue("http://www.chromium.org").Equals(value)); 679 EXPECT_TRUE(StringValue("http://www.chromium.org").Equals(value));
665 680
666 EXPECT_CALL(observer_, OnPrefValueChanged(_)).Times(0); 681 EXPECT_CALL(observer_, OnPrefValueChanged(_)).Times(0);
667 store_.OnUpdatePolicy(); 682 store_->OnUpdatePolicy();
668 Mock::VerifyAndClearExpectations(&observer_); 683 Mock::VerifyAndClearExpectations(&observer_);
669 684
670 EXPECT_CALL(observer_, OnPrefValueChanged(prefs::kHomePage)).Times(1); 685 EXPECT_CALL(observer_, OnPrefValueChanged(prefs::kHomePage)).Times(1);
671 provider_.RemovePolicy(kPolicyHomePage); 686 provider_.RemovePolicy(kPolicyHomePage);
672 store_.OnUpdatePolicy(); 687 store_->OnUpdatePolicy();
673 Mock::VerifyAndClearExpectations(&observer_); 688 Mock::VerifyAndClearExpectations(&observer_);
674 EXPECT_EQ(PrefStore::READ_NO_VALUE, 689 EXPECT_EQ(PrefStore::READ_NO_VALUE,
675 store_.GetValue(prefs::kHomePage, NULL)); 690 store_->GetValue(prefs::kHomePage, NULL));
676 } 691 }
677 692
678 TEST_F(ConfigurationPolicyPrefStoreRefreshTest, Initialization) { 693 TEST_F(ConfigurationPolicyPrefStoreRefreshTest, Initialization) {
679 EXPECT_FALSE(store_.IsInitializationComplete()); 694 EXPECT_FALSE(store_->IsInitializationComplete());
680 695
681 EXPECT_CALL(observer_, OnInitializationCompleted()).Times(1); 696 EXPECT_CALL(observer_, OnInitializationCompleted()).Times(1);
682 697
683 provider_.SetInitializationComplete(true); 698 provider_.SetInitializationComplete(true);
684 EXPECT_FALSE(store_.IsInitializationComplete()); 699 EXPECT_FALSE(store_->IsInitializationComplete());
685 700
686 store_.OnUpdatePolicy(); 701 store_->OnUpdatePolicy();
687 Mock::VerifyAndClearExpectations(&observer_); 702 Mock::VerifyAndClearExpectations(&observer_);
688 EXPECT_TRUE(store_.IsInitializationComplete()); 703 EXPECT_TRUE(store_->IsInitializationComplete());
689 } 704 }
690 705
691 } // namespace policy 706 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698