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

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

Issue 6002015: Policy: generate boilerplate policy type and constant code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix build 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) 2010 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 "chrome/browser/policy/configuration_policy_pref_store.h" 6 #include "chrome/browser/policy/configuration_policy_pref_store.h"
7 #include "chrome/browser/policy/mock_configuration_policy_provider.h" 7 #include "chrome/browser/policy/mock_configuration_policy_provider.h"
8 #include "chrome/browser/prefs/proxy_prefs.h" 8 #include "chrome/browser/prefs/proxy_prefs.h"
9 #include "chrome/common/chrome_switches.h" 9 #include "chrome/common/chrome_switches.h"
10 #include "chrome/common/notification_service.h" 10 #include "chrome/common/notification_service.h"
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 Value* value; 64 Value* value;
65 EXPECT_EQ(PrefStore::READ_OK, 65 EXPECT_EQ(PrefStore::READ_OK,
66 store_.GetValue(GetParam().pref_name(), &value)); 66 store_.GetValue(GetParam().pref_name(), &value));
67 EXPECT_TRUE(in_value->Equals(value)); 67 EXPECT_TRUE(in_value->Equals(value));
68 } 68 }
69 69
70 INSTANTIATE_TEST_CASE_P( 70 INSTANTIATE_TEST_CASE_P(
71 ConfigurationPolicyPrefStoreListTestInstance, 71 ConfigurationPolicyPrefStoreListTestInstance,
72 ConfigurationPolicyPrefStoreListTest, 72 ConfigurationPolicyPrefStoreListTest,
73 testing::Values( 73 testing::Values(
74 TypeAndName(kPolicyURLsToRestoreOnStartup, 74 TypeAndName(kPolicyRestoreOnStartupURLs,
75 prefs::kURLsToRestoreOnStartup), 75 prefs::kURLsToRestoreOnStartup),
76 TypeAndName(kPolicyExtensionInstallAllowList, 76 TypeAndName(kPolicyExtensionInstallWhitelist,
77 prefs::kExtensionInstallAllowList), 77 prefs::kExtensionInstallAllowList),
78 TypeAndName(kPolicyExtensionInstallDenyList, 78 TypeAndName(kPolicyExtensionInstallBlacklist,
79 prefs::kExtensionInstallDenyList), 79 prefs::kExtensionInstallDenyList),
80 TypeAndName(kPolicyDisabledPlugins, 80 TypeAndName(kPolicyDisabledPlugins,
81 prefs::kPluginsPluginsBlacklist))); 81 prefs::kPluginsPluginsBlacklist)));
82 82
83 // Test cases for string-valued policy settings. 83 // Test cases for string-valued policy settings.
84 class ConfigurationPolicyPrefStoreStringTest 84 class ConfigurationPolicyPrefStoreStringTest
85 : public ConfigurationPolicyPrefStoreTestBase< 85 : public ConfigurationPolicyPrefStoreTestBase<
86 testing::TestWithParam<TypeAndName> > { 86 testing::TestWithParam<TypeAndName> > {
87 }; 87 };
88 88
89 TEST_P(ConfigurationPolicyPrefStoreStringTest, GetDefault) { 89 TEST_P(ConfigurationPolicyPrefStoreStringTest, GetDefault) {
90 EXPECT_EQ(PrefStore::READ_NO_VALUE, 90 EXPECT_EQ(PrefStore::READ_NO_VALUE,
91 store_.GetValue(GetParam().pref_name(), NULL)); 91 store_.GetValue(GetParam().pref_name(), NULL));
92 } 92 }
93 93
94 TEST_P(ConfigurationPolicyPrefStoreStringTest, SetValue) { 94 TEST_P(ConfigurationPolicyPrefStoreStringTest, SetValue) {
95 provider_.AddPolicy(GetParam().type(), 95 provider_.AddPolicy(GetParam().type(),
96 Value::CreateStringValue("http://chromium.org")); 96 Value::CreateStringValue("http://chromium.org"));
97 store_.OnUpdatePolicy(); 97 store_.OnUpdatePolicy();
98 Value* value; 98 Value* value;
99 EXPECT_EQ(PrefStore::READ_OK, 99 EXPECT_EQ(PrefStore::READ_OK,
100 store_.GetValue(GetParam().pref_name(), &value)); 100 store_.GetValue(GetParam().pref_name(), &value));
101 EXPECT_TRUE(StringValue("http://chromium.org").Equals(value)); 101 EXPECT_TRUE(StringValue("http://chromium.org").Equals(value));
102 } 102 }
103 103
104 INSTANTIATE_TEST_CASE_P( 104 INSTANTIATE_TEST_CASE_P(
105 ConfigurationPolicyPrefStoreStringTestInstance, 105 ConfigurationPolicyPrefStoreStringTestInstance,
106 ConfigurationPolicyPrefStoreStringTest, 106 ConfigurationPolicyPrefStoreStringTest,
107 testing::Values( 107 testing::Values(
108 TypeAndName(kPolicyHomePage, 108 TypeAndName(kPolicyHomepageLocation,
109 prefs::kHomePage), 109 prefs::kHomePage),
110 TypeAndName(kPolicyApplicationLocale, 110 TypeAndName(kPolicyApplicationLocaleValue,
111 prefs::kApplicationLocale), 111 prefs::kApplicationLocale),
112 TypeAndName(kPolicyApplicationLocale, 112 TypeAndName(kPolicyApplicationLocaleValue,
113 prefs::kApplicationLocale), 113 prefs::kApplicationLocale),
114 TypeAndName(kPolicyAuthSchemes, 114 TypeAndName(kPolicyAuthSchemes,
115 prefs::kAuthSchemes), 115 prefs::kAuthSchemes),
116 TypeAndName(kPolicyAuthServerWhitelist, 116 TypeAndName(kPolicyAuthServerWhitelist,
117 prefs::kAuthServerWhitelist), 117 prefs::kAuthServerWhitelist),
118 TypeAndName(kPolicyAuthNegotiateDelegateWhitelist, 118 TypeAndName(kPolicyAuthNegotiateDelegateWhitelist,
119 prefs::kAuthNegotiateDelegateWhitelist), 119 prefs::kAuthNegotiateDelegateWhitelist),
120 TypeAndName(kPolicyGSSAPILibraryName, 120 TypeAndName(kPolicyGSSAPILibraryName,
121 prefs::kGSSAPILibraryName))); 121 prefs::kGSSAPILibraryName)));
122 122
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 EXPECT_TRUE(FundamentalValue(expected_proxy_mode).Equals(value)); 263 EXPECT_TRUE(FundamentalValue(expected_proxy_mode).Equals(value));
264 } 264 }
265 }; 265 };
266 266
267 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ManualOptions) { 267 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ManualOptions) {
268 MockConfigurationPolicyProvider provider; 268 MockConfigurationPolicyProvider provider;
269 provider.AddPolicy(kPolicyProxyBypassList, 269 provider.AddPolicy(kPolicyProxyBypassList,
270 Value::CreateStringValue("http://chromium.org/override")); 270 Value::CreateStringValue("http://chromium.org/override"));
271 provider.AddPolicy(kPolicyProxyServer, 271 provider.AddPolicy(kPolicyProxyServer,
272 Value::CreateStringValue("chromium.org")); 272 Value::CreateStringValue("chromium.org"));
273 provider.AddPolicy(kPolicyProxyMode, 273 provider.AddPolicy(kPolicyProxyServerMode,
274 Value::CreateIntegerValue( 274 Value::CreateIntegerValue(
275 kPolicyManuallyConfiguredProxyMode)); 275 kPolicyManuallyConfiguredProxyMode));
276 276
277 ConfigurationPolicyPrefStore store(&provider); 277 ConfigurationPolicyPrefStore store(&provider);
278 VerifyProxyPrefs( 278 VerifyProxyPrefs(
279 store, "chromium.org", "", "http://chromium.org/override", 279 store, "chromium.org", "", "http://chromium.org/override",
280 ProxyPrefs::MODE_FIXED_SERVERS); 280 ProxyPrefs::MODE_FIXED_SERVERS);
281 } 281 }
282 282
283 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ManualOptionsReversedApplyOrder) { 283 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ManualOptionsReversedApplyOrder) {
284 MockConfigurationPolicyProvider provider; 284 MockConfigurationPolicyProvider provider;
285 provider.AddPolicy(kPolicyProxyMode, 285 provider.AddPolicy(kPolicyProxyServerMode,
286 Value::CreateIntegerValue( 286 Value::CreateIntegerValue(
287 kPolicyManuallyConfiguredProxyMode)); 287 kPolicyManuallyConfiguredProxyMode));
288 provider.AddPolicy(kPolicyProxyBypassList, 288 provider.AddPolicy(kPolicyProxyBypassList,
289 Value::CreateStringValue("http://chromium.org/override")); 289 Value::CreateStringValue("http://chromium.org/override"));
290 provider.AddPolicy(kPolicyProxyServer, 290 provider.AddPolicy(kPolicyProxyServer,
291 Value::CreateStringValue("chromium.org")); 291 Value::CreateStringValue("chromium.org"));
292 292
293 ConfigurationPolicyPrefStore store(&provider); 293 ConfigurationPolicyPrefStore store(&provider);
294 VerifyProxyPrefs( 294 VerifyProxyPrefs(
295 store, "chromium.org", "", "http://chromium.org/override", 295 store, "chromium.org", "", "http://chromium.org/override",
296 ProxyPrefs::MODE_FIXED_SERVERS); 296 ProxyPrefs::MODE_FIXED_SERVERS);
297 } 297 }
298 298
299 TEST_F(ConfigurationPolicyPrefStoreProxyTest, NoProxy) { 299 TEST_F(ConfigurationPolicyPrefStoreProxyTest, NoProxy) {
300 MockConfigurationPolicyProvider provider; 300 MockConfigurationPolicyProvider provider;
301 provider.AddPolicy(kPolicyProxyMode, 301 provider.AddPolicy(kPolicyProxyServerMode,
302 Value::CreateIntegerValue(kPolicyNoProxyServerMode)); 302 Value::CreateIntegerValue(kPolicyNoProxyServerMode));
303 303
304 ConfigurationPolicyPrefStore store(&provider); 304 ConfigurationPolicyPrefStore store(&provider);
305 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_DIRECT); 305 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_DIRECT);
306 } 306 }
307 307
308 TEST_F(ConfigurationPolicyPrefStoreProxyTest, AutoDetect) { 308 TEST_F(ConfigurationPolicyPrefStoreProxyTest, AutoDetect) {
309 MockConfigurationPolicyProvider provider; 309 MockConfigurationPolicyProvider provider;
310 provider.AddPolicy(kPolicyProxyMode, 310 provider.AddPolicy(kPolicyProxyServerMode,
311 Value::CreateIntegerValue(kPolicyAutoDetectProxyMode)); 311 Value::CreateIntegerValue(kPolicyAutoDetectProxyMode));
312 312
313 ConfigurationPolicyPrefStore store(&provider); 313 ConfigurationPolicyPrefStore store(&provider);
314 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_AUTO_DETECT); 314 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_AUTO_DETECT);
315 } 315 }
316 316
317 TEST_F(ConfigurationPolicyPrefStoreProxyTest, AutoDetectPac) { 317 TEST_F(ConfigurationPolicyPrefStoreProxyTest, AutoDetectPac) {
318 MockConfigurationPolicyProvider provider; 318 MockConfigurationPolicyProvider provider;
319 provider.AddPolicy(kPolicyProxyPacUrl, 319 provider.AddPolicy(kPolicyProxyPacUrl,
320 Value::CreateStringValue("http://short.org/proxy.pac")); 320 Value::CreateStringValue("http://short.org/proxy.pac"));
321 provider.AddPolicy( 321 provider.AddPolicy(
322 kPolicyProxyMode, 322 kPolicyProxyServerMode,
323 Value::CreateIntegerValue(kPolicyManuallyConfiguredProxyMode)); 323 Value::CreateIntegerValue(kPolicyManuallyConfiguredProxyMode));
324 324
325 ConfigurationPolicyPrefStore store(&provider); 325 ConfigurationPolicyPrefStore store(&provider);
326 VerifyProxyPrefs( 326 VerifyProxyPrefs(
327 store, "", "http://short.org/proxy.pac", "", ProxyPrefs::MODE_PAC_SCRIPT); 327 store, "", "http://short.org/proxy.pac", "", ProxyPrefs::MODE_PAC_SCRIPT);
328 } 328 }
329 329
330 TEST_F(ConfigurationPolicyPrefStoreProxyTest, UseSystem) { 330 TEST_F(ConfigurationPolicyPrefStoreProxyTest, UseSystem) {
331 MockConfigurationPolicyProvider provider; 331 MockConfigurationPolicyProvider provider;
332 provider.AddPolicy(kPolicyProxyMode, 332 provider.AddPolicy(kPolicyProxyServerMode,
333 Value::CreateIntegerValue(kPolicyUseSystemProxyMode)); 333 Value::CreateIntegerValue(kPolicyUseSystemProxyMode));
334 334
335 ConfigurationPolicyPrefStore store(&provider); 335 ConfigurationPolicyPrefStore store(&provider);
336 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_SYSTEM); 336 VerifyProxyPrefs(store, "", "", "", ProxyPrefs::MODE_SYSTEM);
337 } 337 }
338 338
339 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ProxyInvalid) { 339 TEST_F(ConfigurationPolicyPrefStoreProxyTest, ProxyInvalid) {
340 for (int i = 0; i < MODE_COUNT; ++i) { 340 for (int i = 0; i < MODE_COUNT; ++i) {
341 MockConfigurationPolicyProvider provider; 341 MockConfigurationPolicyProvider provider;
342 provider.AddPolicy(kPolicyProxyMode, Value::CreateIntegerValue(i)); 342 provider.AddPolicy(kPolicyProxyServerMode, Value::CreateIntegerValue(i));
343 // No mode expects all three parameters being set. 343 // No mode expects all three parameters being set.
344 provider.AddPolicy(kPolicyProxyPacUrl, 344 provider.AddPolicy(kPolicyProxyPacUrl,
345 Value::CreateStringValue("http://short.org/proxy.pac")); 345 Value::CreateStringValue("http://short.org/proxy.pac"));
346 provider.AddPolicy(kPolicyProxyBypassList, 346 provider.AddPolicy(kPolicyProxyBypassList,
347 Value::CreateStringValue( 347 Value::CreateStringValue(
348 "http://chromium.org/override")); 348 "http://chromium.org/override"));
349 provider.AddPolicy(kPolicyProxyServer, 349 provider.AddPolicy(kPolicyProxyServer,
350 Value::CreateStringValue("chromium.org")); 350 Value::CreateStringValue("chromium.org"));
351 351
352 ConfigurationPolicyPrefStore store(&provider); 352 ConfigurationPolicyPrefStore store(&provider);
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
598 598
599 PrefStoreObserverMock observer_; 599 PrefStoreObserverMock observer_;
600 }; 600 };
601 601
602 TEST_F(ConfigurationPolicyPrefStoreRefreshTest, Refresh) { 602 TEST_F(ConfigurationPolicyPrefStoreRefreshTest, Refresh) {
603 Value* value = NULL; 603 Value* value = NULL;
604 EXPECT_EQ(PrefStore::READ_NO_VALUE, 604 EXPECT_EQ(PrefStore::READ_NO_VALUE,
605 store_.GetValue(prefs::kHomePage, NULL)); 605 store_.GetValue(prefs::kHomePage, NULL));
606 606
607 EXPECT_CALL(observer_, OnPrefValueChanged(prefs::kHomePage)).Times(1); 607 EXPECT_CALL(observer_, OnPrefValueChanged(prefs::kHomePage)).Times(1);
608 provider_.AddPolicy(kPolicyHomePage, 608 provider_.AddPolicy(kPolicyHomepageLocation,
609 Value::CreateStringValue("http://www.chromium.org")); 609 Value::CreateStringValue("http://www.chromium.org"));
610 store_.OnUpdatePolicy(); 610 store_.OnUpdatePolicy();
611 Mock::VerifyAndClearExpectations(&observer_); 611 Mock::VerifyAndClearExpectations(&observer_);
612 EXPECT_EQ(PrefStore::READ_OK, 612 EXPECT_EQ(PrefStore::READ_OK,
613 store_.GetValue(prefs::kHomePage, &value)); 613 store_.GetValue(prefs::kHomePage, &value));
614 EXPECT_TRUE(StringValue("http://www.chromium.org").Equals(value)); 614 EXPECT_TRUE(StringValue("http://www.chromium.org").Equals(value));
615 615
616 EXPECT_CALL(observer_, OnPrefValueChanged(_)).Times(0); 616 EXPECT_CALL(observer_, OnPrefValueChanged(_)).Times(0);
617 store_.OnUpdatePolicy(); 617 store_.OnUpdatePolicy();
618 Mock::VerifyAndClearExpectations(&observer_); 618 Mock::VerifyAndClearExpectations(&observer_);
619 619
620 EXPECT_CALL(observer_, OnPrefValueChanged(prefs::kHomePage)).Times(1); 620 EXPECT_CALL(observer_, OnPrefValueChanged(prefs::kHomePage)).Times(1);
621 provider_.RemovePolicy(kPolicyHomePage); 621 provider_.RemovePolicy(kPolicyHomepageLocation);
622 store_.OnUpdatePolicy(); 622 store_.OnUpdatePolicy();
623 Mock::VerifyAndClearExpectations(&observer_); 623 Mock::VerifyAndClearExpectations(&observer_);
624 EXPECT_EQ(PrefStore::READ_NO_VALUE, 624 EXPECT_EQ(PrefStore::READ_NO_VALUE,
625 store_.GetValue(prefs::kHomePage, NULL)); 625 store_.GetValue(prefs::kHomePage, NULL));
626 } 626 }
627 627
628 TEST_F(ConfigurationPolicyPrefStoreRefreshTest, Initialization) { 628 TEST_F(ConfigurationPolicyPrefStoreRefreshTest, Initialization) {
629 EXPECT_FALSE(store_.IsInitializationComplete()); 629 EXPECT_FALSE(store_.IsInitializationComplete());
630 630
631 EXPECT_CALL(observer_, OnInitializationCompleted()).Times(1); 631 EXPECT_CALL(observer_, OnInitializationCompleted()).Times(1);
632 632
633 provider_.SetInitializationComplete(true); 633 provider_.SetInitializationComplete(true);
634 EXPECT_FALSE(store_.IsInitializationComplete()); 634 EXPECT_FALSE(store_.IsInitializationComplete());
635 635
636 store_.OnUpdatePolicy(); 636 store_.OnUpdatePolicy();
637 Mock::VerifyAndClearExpectations(&observer_); 637 Mock::VerifyAndClearExpectations(&observer_);
638 EXPECT_TRUE(store_.IsInitializationComplete()); 638 EXPECT_TRUE(store_.IsInitializationComplete());
639 } 639 }
640 640
641 } // namespace policy 641 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698