| Index: chrome/browser/prefs/pref_service_unittest.cc
|
| diff --git a/chrome/browser/prefs/pref_service_unittest.cc b/chrome/browser/prefs/pref_service_unittest.cc
|
| index 496e9de1560ba24983ee147af602d09552372e96..cf6d0edde2727b5eb624bed17a78a2e22a6ddc05 100644
|
| --- a/chrome/browser/prefs/pref_service_unittest.cc
|
| +++ b/chrome/browser/prefs/pref_service_unittest.cc
|
| @@ -16,7 +16,6 @@
|
| #include "chrome/browser/prefs/pref_observer_mock.h"
|
| #include "chrome/browser/prefs/pref_service_mock_builder.h"
|
| #include "chrome/browser/prefs/pref_value_store.h"
|
| -#include "chrome/browser/prefs/proxy_config_dictionary.h"
|
| #include "chrome/browser/prefs/testing_pref_store.h"
|
| #include "chrome/common/chrome_paths.h"
|
| #include "chrome/common/chrome_switches.h"
|
| @@ -169,186 +168,6 @@ TEST(PrefServiceTest, GetValueChangedType) {
|
| EXPECT_EQ(kTestValue, actual_int_value);
|
| }
|
|
|
| -void assertProxyMode(const ProxyConfigDictionary& dict,
|
| - ProxyPrefs::ProxyMode expected_mode) {
|
| - ProxyPrefs::ProxyMode actual_mode;
|
| - ASSERT_TRUE(dict.GetMode(&actual_mode));
|
| - EXPECT_EQ(expected_mode, actual_mode);
|
| -}
|
| -
|
| -void assertProxyServer(const ProxyConfigDictionary& dict,
|
| - const std::string& expected) {
|
| - std::string actual;
|
| - if (!expected.empty()) {
|
| - ASSERT_TRUE(dict.GetProxyServer(&actual));
|
| - EXPECT_EQ(expected, actual);
|
| - } else {
|
| - EXPECT_FALSE(dict.GetProxyServer(&actual));
|
| - }
|
| -}
|
| -
|
| -void assertPacUrl(const ProxyConfigDictionary& dict,
|
| - const std::string& expected) {
|
| - std::string actual;
|
| - if (!expected.empty()) {
|
| - ASSERT_TRUE(dict.GetPacUrl(&actual));
|
| - EXPECT_EQ(expected, actual);
|
| - } else {
|
| - EXPECT_FALSE(dict.GetPacUrl(&actual));
|
| - }
|
| -}
|
| -
|
| -void assertBypassList(const ProxyConfigDictionary& dict,
|
| - const std::string& expected) {
|
| - std::string actual;
|
| - if (!expected.empty()) {
|
| - ASSERT_TRUE(dict.GetBypassList(&actual));
|
| - EXPECT_EQ(expected, actual);
|
| - } else {
|
| - EXPECT_FALSE(dict.GetBypassList(&actual));
|
| - }
|
| -}
|
| -
|
| -void assertProxyModeWithoutParams(const ProxyConfigDictionary& dict,
|
| - ProxyPrefs::ProxyMode proxy_mode) {
|
| - assertProxyMode(dict, proxy_mode);
|
| - assertProxyServer(dict, "");
|
| - assertPacUrl(dict, "");
|
| - assertBypassList(dict, "");
|
| -}
|
| -
|
| -TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineOptions) {
|
| - CommandLine command_line(CommandLine::NO_PROGRAM);
|
| - command_line.AppendSwitchASCII(switches::kProxyBypassList, "123");
|
| - command_line.AppendSwitchASCII(switches::kProxyServer, "789");
|
| - scoped_ptr<policy::MockConfigurationPolicyProvider> provider(
|
| - new policy::MockConfigurationPolicyProvider());
|
| - Value* mode_name = Value::CreateStringValue(
|
| - ProxyPrefs::kFixedServersProxyModeName);
|
| - provider->AddPolicy(policy::kPolicyProxyMode, mode_name);
|
| - provider->AddPolicy(policy::kPolicyProxyBypassList,
|
| - Value::CreateStringValue("abc"));
|
| - provider->AddPolicy(policy::kPolicyProxyServer,
|
| - Value::CreateStringValue("ghi"));
|
| -
|
| - // First verify that command-line options are set correctly when
|
| - // there is no policy in effect.
|
| - PrefServiceMockBuilder builder;
|
| - builder.WithCommandLine(&command_line);
|
| - scoped_ptr<PrefService> prefs(builder.Create());
|
| - browser::RegisterUserPrefs(prefs.get());
|
| - ProxyConfigDictionary dict(prefs->GetDictionary(prefs::kProxy));
|
| - assertProxyMode(dict, ProxyPrefs::MODE_FIXED_SERVERS);
|
| - assertProxyServer(dict, "789");
|
| - assertPacUrl(dict, "");
|
| - assertBypassList(dict, "123");
|
| -
|
| - // Try a second time time with the managed PrefStore in place, the
|
| - // manual proxy policy should have removed all traces of the command
|
| - // line and replaced them with the policy versions.
|
| - builder.WithCommandLine(&command_line);
|
| - builder.WithManagedPlatformProvider(provider.get());
|
| - scoped_ptr<PrefService> prefs2(builder.Create());
|
| - browser::RegisterUserPrefs(prefs2.get());
|
| - ProxyConfigDictionary dict2(prefs2->GetDictionary(prefs::kProxy));
|
| - assertProxyMode(dict2, ProxyPrefs::MODE_FIXED_SERVERS);
|
| - assertProxyServer(dict2, "ghi");
|
| - assertPacUrl(dict2, "");
|
| - assertBypassList(dict2, "abc");
|
| -}
|
| -
|
| -TEST(PrefServiceTest, ProxyPolicyOverridesUnrelatedCommandLineOptions) {
|
| - CommandLine command_line(CommandLine::NO_PROGRAM);
|
| - command_line.AppendSwitchASCII(switches::kProxyBypassList, "123");
|
| - command_line.AppendSwitchASCII(switches::kProxyServer, "789");
|
| - scoped_ptr<policy::MockConfigurationPolicyProvider> provider(
|
| - new policy::MockConfigurationPolicyProvider());
|
| - Value* mode_name = Value::CreateStringValue(
|
| - ProxyPrefs::kAutoDetectProxyModeName);
|
| - provider->AddPolicy(policy::kPolicyProxyMode, mode_name);
|
| -
|
| - // First verify that command-line options are set correctly when
|
| - // there is no policy in effect.
|
| - PrefServiceMockBuilder builder;
|
| - builder.WithCommandLine(&command_line);
|
| - scoped_ptr<PrefService> prefs(builder.Create());
|
| - browser::RegisterUserPrefs(prefs.get());
|
| - ProxyConfigDictionary dict(prefs->GetDictionary(prefs::kProxy));
|
| - assertProxyMode(dict, ProxyPrefs::MODE_FIXED_SERVERS);
|
| - assertProxyServer(dict, "789");
|
| - assertPacUrl(dict, "");
|
| - assertBypassList(dict, "123");
|
| -
|
| - // Try a second time time with the managed PrefStore in place, the
|
| - // no proxy policy should have removed all traces of the command
|
| - // line proxy settings, even though they were not the specific one
|
| - // set in policy.
|
| - builder.WithCommandLine(&command_line);
|
| - builder.WithManagedPlatformProvider(provider.get());
|
| - scoped_ptr<PrefService> prefs2(builder.Create());
|
| - browser::RegisterUserPrefs(prefs2.get());
|
| - ProxyConfigDictionary dict2(prefs2->GetDictionary(prefs::kProxy));
|
| - assertProxyModeWithoutParams(dict2, ProxyPrefs::MODE_AUTO_DETECT);
|
| -}
|
| -
|
| -TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineNoProxy) {
|
| - CommandLine command_line(CommandLine::NO_PROGRAM);
|
| - command_line.AppendSwitch(switches::kNoProxyServer);
|
| - scoped_ptr<policy::MockConfigurationPolicyProvider> provider(
|
| - new policy::MockConfigurationPolicyProvider());
|
| - Value* mode_name = Value::CreateStringValue(
|
| - ProxyPrefs::kAutoDetectProxyModeName);
|
| - provider->AddPolicy(policy::kPolicyProxyMode, mode_name);
|
| -
|
| - // First verify that command-line options are set correctly when
|
| - // there is no policy in effect.
|
| - PrefServiceMockBuilder builder;
|
| - builder.WithCommandLine(&command_line);
|
| - scoped_ptr<PrefService> prefs(builder.Create());
|
| - browser::RegisterUserPrefs(prefs.get());
|
| - ProxyConfigDictionary dict(prefs->GetDictionary(prefs::kProxy));
|
| - assertProxyModeWithoutParams(dict, ProxyPrefs::MODE_DIRECT);
|
| -
|
| - // Try a second time time with the managed PrefStore in place, the
|
| - // auto-detect should be overridden. The default pref store must be
|
| - // in place with the appropriate default value for this to work.
|
| - builder.WithCommandLine(&command_line);
|
| - builder.WithManagedPlatformProvider(provider.get());
|
| - scoped_ptr<PrefService> prefs2(builder.Create());
|
| - browser::RegisterUserPrefs(prefs2.get());
|
| - ProxyConfigDictionary dict2(prefs2->GetDictionary(prefs::kProxy));
|
| - assertProxyModeWithoutParams(dict2, ProxyPrefs::MODE_AUTO_DETECT);
|
| -}
|
| -
|
| -TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineAutoDetect) {
|
| - CommandLine command_line(CommandLine::NO_PROGRAM);
|
| - command_line.AppendSwitch(switches::kProxyAutoDetect);
|
| - scoped_ptr<policy::MockConfigurationPolicyProvider> provider(
|
| - new policy::MockConfigurationPolicyProvider());
|
| - Value* mode_name = Value::CreateStringValue(
|
| - ProxyPrefs::kDirectProxyModeName);
|
| - provider->AddPolicy(policy::kPolicyProxyMode, mode_name);
|
| -
|
| - // First verify that the auto-detect is set if there is no managed
|
| - // PrefStore.
|
| - PrefServiceMockBuilder builder;
|
| - builder.WithCommandLine(&command_line);
|
| - scoped_ptr<PrefService> prefs(builder.Create());
|
| - browser::RegisterUserPrefs(prefs.get());
|
| - ProxyConfigDictionary dict(prefs->GetDictionary(prefs::kProxy));
|
| - assertProxyModeWithoutParams(dict, ProxyPrefs::MODE_AUTO_DETECT);
|
| -
|
| - // Try a second time time with the managed PrefStore in place, the
|
| - // auto-detect should be overridden. The default pref store must be
|
| - // in place with the appropriate default value for this to work.
|
| - builder.WithCommandLine(&command_line);
|
| - builder.WithManagedPlatformProvider(provider.get());
|
| - scoped_ptr<PrefService> prefs2(builder.Create());
|
| - browser::RegisterUserPrefs(prefs2.get());
|
| - ProxyConfigDictionary dict2(prefs2->GetDictionary(prefs::kProxy));
|
| - assertProxyModeWithoutParams(dict2, ProxyPrefs::MODE_DIRECT);
|
| -}
|
| -
|
| class PrefServiceSetValueTest : public testing::Test {
|
| protected:
|
| static const char kName[];
|
|
|