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

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

Powered by Google App Engine
This is Rietveld 408576698