OLD | NEW |
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 <string> | 5 #include <string> |
6 | 6 |
7 #include "app/test/data/resource.h" | 7 #include "app/test/data/resource.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "base/scoped_ptr.h" | 9 #include "base/scoped_ptr.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 registrar.Remove(pref_name, &obs); | 179 registrar.Remove(pref_name, &obs); |
180 obs.Reset(""); | 180 obs.Reset(""); |
181 obs2.Reset(new_pref_value); | 181 obs2.Reset(new_pref_value); |
182 // This should only fire the observer in obs2. | 182 // This should only fire the observer in obs2. |
183 prefs.SetString(pref_name, new_pref_value); | 183 prefs.SetString(pref_name, new_pref_value); |
184 EXPECT_FALSE(obs.observer_fired()); | 184 EXPECT_FALSE(obs.observer_fired()); |
185 EXPECT_TRUE(obs2.observer_fired()); | 185 EXPECT_TRUE(obs2.observer_fired()); |
186 } | 186 } |
187 | 187 |
188 TEST(PrefServiceTest, ProxyFromCommandLineNotPolicy) { | 188 TEST(PrefServiceTest, ProxyFromCommandLineNotPolicy) { |
189 CommandLine command_line(CommandLine::ARGUMENTS_ONLY); | 189 CommandLine command_line(CommandLine::NO_PROGRAM); |
190 command_line.AppendSwitch(switches::kProxyAutoDetect); | 190 command_line.AppendSwitch(switches::kProxyAutoDetect); |
191 TestingPrefService prefs(NULL, &command_line); | 191 TestingPrefService prefs(NULL, &command_line); |
192 browser::RegisterUserPrefs(&prefs); | 192 browser::RegisterUserPrefs(&prefs); |
193 EXPECT_TRUE(prefs.GetBoolean(prefs::kProxyAutoDetect)); | 193 EXPECT_TRUE(prefs.GetBoolean(prefs::kProxyAutoDetect)); |
194 const PrefService::Preference* pref = | 194 const PrefService::Preference* pref = |
195 prefs.FindPreference(prefs::kProxyAutoDetect); | 195 prefs.FindPreference(prefs::kProxyAutoDetect); |
196 ASSERT_TRUE(pref); | 196 ASSERT_TRUE(pref); |
197 EXPECT_FALSE(pref->IsManaged()); | 197 EXPECT_FALSE(pref->IsManaged()); |
198 } | 198 } |
199 | 199 |
200 TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineOptions) { | 200 TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineOptions) { |
201 CommandLine command_line(CommandLine::ARGUMENTS_ONLY); | 201 CommandLine command_line(CommandLine::NO_PROGRAM); |
202 command_line.AppendSwitchASCII(switches::kProxyBypassList, "123"); | 202 command_line.AppendSwitchASCII(switches::kProxyBypassList, "123"); |
203 command_line.AppendSwitchASCII(switches::kProxyPacUrl, "456"); | 203 command_line.AppendSwitchASCII(switches::kProxyPacUrl, "456"); |
204 command_line.AppendSwitchASCII(switches::kProxyServer, "789"); | 204 command_line.AppendSwitchASCII(switches::kProxyServer, "789"); |
205 scoped_ptr<policy::MockConfigurationPolicyProvider> provider( | 205 scoped_ptr<policy::MockConfigurationPolicyProvider> provider( |
206 new policy::MockConfigurationPolicyProvider()); | 206 new policy::MockConfigurationPolicyProvider()); |
207 Value* mode_value = Value::CreateIntegerValue( | 207 Value* mode_value = Value::CreateIntegerValue( |
208 policy::ConfigurationPolicyStore::kPolicyManuallyConfiguredProxyMode); | 208 policy::ConfigurationPolicyStore::kPolicyManuallyConfiguredProxyMode); |
209 provider->AddPolicy( | 209 provider->AddPolicy( |
210 policy::ConfigurationPolicyStore::kPolicyProxyServerMode, | 210 policy::ConfigurationPolicyStore::kPolicyProxyServerMode, |
211 mode_value); | 211 mode_value); |
(...skipping 23 matching lines...) Expand all Loading... |
235 TestingPrefService prefs2(provider.get(), &command_line); | 235 TestingPrefService prefs2(provider.get(), &command_line); |
236 browser::RegisterUserPrefs(&prefs2); | 236 browser::RegisterUserPrefs(&prefs2); |
237 EXPECT_FALSE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); | 237 EXPECT_FALSE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); |
238 EXPECT_FALSE(prefs2.GetBoolean(prefs::kNoProxyServer)); | 238 EXPECT_FALSE(prefs2.GetBoolean(prefs::kNoProxyServer)); |
239 EXPECT_EQ("ghi", prefs2.GetString(prefs::kProxyServer)); | 239 EXPECT_EQ("ghi", prefs2.GetString(prefs::kProxyServer)); |
240 EXPECT_EQ("def", prefs2.GetString(prefs::kProxyPacUrl)); | 240 EXPECT_EQ("def", prefs2.GetString(prefs::kProxyPacUrl)); |
241 EXPECT_EQ("abc", prefs2.GetString(prefs::kProxyBypassList)); | 241 EXPECT_EQ("abc", prefs2.GetString(prefs::kProxyBypassList)); |
242 } | 242 } |
243 | 243 |
244 TEST(PrefServiceTest, ProxyPolicyOverridesUnrelatedCommandLineOptions) { | 244 TEST(PrefServiceTest, ProxyPolicyOverridesUnrelatedCommandLineOptions) { |
245 CommandLine command_line(CommandLine::ARGUMENTS_ONLY); | 245 CommandLine command_line(CommandLine::NO_PROGRAM); |
246 command_line.AppendSwitchASCII(switches::kProxyBypassList, "123"); | 246 command_line.AppendSwitchASCII(switches::kProxyBypassList, "123"); |
247 command_line.AppendSwitchASCII(switches::kProxyPacUrl, "456"); | 247 command_line.AppendSwitchASCII(switches::kProxyPacUrl, "456"); |
248 command_line.AppendSwitchASCII(switches::kProxyServer, "789"); | 248 command_line.AppendSwitchASCII(switches::kProxyServer, "789"); |
249 scoped_ptr<policy::MockConfigurationPolicyProvider> provider( | 249 scoped_ptr<policy::MockConfigurationPolicyProvider> provider( |
250 new policy::MockConfigurationPolicyProvider()); | 250 new policy::MockConfigurationPolicyProvider()); |
251 Value* mode_value = Value::CreateIntegerValue( | 251 Value* mode_value = Value::CreateIntegerValue( |
252 policy::ConfigurationPolicyStore::kPolicyUseSystemProxyMode); | 252 policy::ConfigurationPolicyStore::kPolicyUseSystemProxyMode); |
253 provider->AddPolicy( | 253 provider->AddPolicy( |
254 policy::ConfigurationPolicyStore::kPolicyProxyServerMode, | 254 policy::ConfigurationPolicyStore::kPolicyProxyServerMode, |
255 mode_value); | 255 mode_value); |
(...skipping 15 matching lines...) Expand all Loading... |
271 TestingPrefService prefs2(provider.get(), &command_line); | 271 TestingPrefService prefs2(provider.get(), &command_line); |
272 browser::RegisterUserPrefs(&prefs2); | 272 browser::RegisterUserPrefs(&prefs2); |
273 EXPECT_FALSE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); | 273 EXPECT_FALSE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); |
274 EXPECT_FALSE(prefs2.GetBoolean(prefs::kNoProxyServer)); | 274 EXPECT_FALSE(prefs2.GetBoolean(prefs::kNoProxyServer)); |
275 EXPECT_EQ("", prefs2.GetString(prefs::kProxyServer)); | 275 EXPECT_EQ("", prefs2.GetString(prefs::kProxyServer)); |
276 EXPECT_EQ("", prefs2.GetString(prefs::kProxyPacUrl)); | 276 EXPECT_EQ("", prefs2.GetString(prefs::kProxyPacUrl)); |
277 EXPECT_EQ("", prefs2.GetString(prefs::kProxyBypassList)); | 277 EXPECT_EQ("", prefs2.GetString(prefs::kProxyBypassList)); |
278 } | 278 } |
279 | 279 |
280 TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineNoProxy) { | 280 TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineNoProxy) { |
281 CommandLine command_line(CommandLine::ARGUMENTS_ONLY); | 281 CommandLine command_line(CommandLine::NO_PROGRAM); |
282 command_line.AppendSwitch(switches::kNoProxyServer); | 282 command_line.AppendSwitch(switches::kNoProxyServer); |
283 scoped_ptr<policy::MockConfigurationPolicyProvider> provider( | 283 scoped_ptr<policy::MockConfigurationPolicyProvider> provider( |
284 new policy::MockConfigurationPolicyProvider()); | 284 new policy::MockConfigurationPolicyProvider()); |
285 Value* mode_value = Value::CreateIntegerValue( | 285 Value* mode_value = Value::CreateIntegerValue( |
286 policy::ConfigurationPolicyStore::kPolicyAutoDetectProxyMode); | 286 policy::ConfigurationPolicyStore::kPolicyAutoDetectProxyMode); |
287 provider->AddPolicy( | 287 provider->AddPolicy( |
288 policy::ConfigurationPolicyStore::kPolicyProxyServerMode, | 288 policy::ConfigurationPolicyStore::kPolicyProxyServerMode, |
289 mode_value); | 289 mode_value); |
290 | 290 |
291 // First verify that command-line options are set correctly when | 291 // First verify that command-line options are set correctly when |
(...skipping 12 matching lines...) Expand all Loading... |
304 TestingPrefService prefs2(provider.get(), &command_line); | 304 TestingPrefService prefs2(provider.get(), &command_line); |
305 browser::RegisterUserPrefs(&prefs2); | 305 browser::RegisterUserPrefs(&prefs2); |
306 EXPECT_TRUE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); | 306 EXPECT_TRUE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); |
307 EXPECT_FALSE(prefs2.GetBoolean(prefs::kNoProxyServer)); | 307 EXPECT_FALSE(prefs2.GetBoolean(prefs::kNoProxyServer)); |
308 EXPECT_EQ("", prefs2.GetString(prefs::kProxyServer)); | 308 EXPECT_EQ("", prefs2.GetString(prefs::kProxyServer)); |
309 EXPECT_EQ("", prefs2.GetString(prefs::kProxyPacUrl)); | 309 EXPECT_EQ("", prefs2.GetString(prefs::kProxyPacUrl)); |
310 EXPECT_EQ("", prefs2.GetString(prefs::kProxyBypassList)); | 310 EXPECT_EQ("", prefs2.GetString(prefs::kProxyBypassList)); |
311 } | 311 } |
312 | 312 |
313 TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineAutoDetect) { | 313 TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineAutoDetect) { |
314 CommandLine command_line(CommandLine::ARGUMENTS_ONLY); | 314 CommandLine command_line(CommandLine::NO_PROGRAM); |
315 command_line.AppendSwitch(switches::kProxyAutoDetect); | 315 command_line.AppendSwitch(switches::kProxyAutoDetect); |
316 scoped_ptr<policy::MockConfigurationPolicyProvider> provider( | 316 scoped_ptr<policy::MockConfigurationPolicyProvider> provider( |
317 new policy::MockConfigurationPolicyProvider()); | 317 new policy::MockConfigurationPolicyProvider()); |
318 Value* mode_value = Value::CreateIntegerValue( | 318 Value* mode_value = Value::CreateIntegerValue( |
319 policy::ConfigurationPolicyStore::kPolicyNoProxyServerMode); | 319 policy::ConfigurationPolicyStore::kPolicyNoProxyServerMode); |
320 provider->AddPolicy( | 320 provider->AddPolicy( |
321 policy::ConfigurationPolicyStore::kPolicyProxyServerMode, | 321 policy::ConfigurationPolicyStore::kPolicyProxyServerMode, |
322 mode_value); | 322 mode_value); |
323 | 323 |
324 // First verify that the auto-detect is set if there is no managed | 324 // First verify that the auto-detect is set if there is no managed |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
456 SetExpectNoNotification(); | 456 SetExpectNoNotification(); |
457 prefs_.Set(name_, new_value); | 457 prefs_.Set(name_, new_value); |
458 Mock::VerifyAndClearExpectations(&observer_); | 458 Mock::VerifyAndClearExpectations(&observer_); |
459 | 459 |
460 SetExpectPrefChanged(); | 460 SetExpectPrefChanged(); |
461 prefs_.Set(name_, *null_value_); | 461 prefs_.Set(name_, *null_value_); |
462 Mock::VerifyAndClearExpectations(&observer_); | 462 Mock::VerifyAndClearExpectations(&observer_); |
463 list = prefs_.GetMutableList(name_); | 463 list = prefs_.GetMutableList(name_); |
464 EXPECT_EQ(0U, list->GetSize()); | 464 EXPECT_EQ(0U, list->GetSize()); |
465 } | 465 } |
OLD | NEW |