| 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 "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/scoped_ptr.h" |
| 8 #include "base/values.h" | 9 #include "base/values.h" |
| 9 #include "base/version.h" | 10 #include "base/version.h" |
| 10 #include "chrome/browser/prefs/proxy_prefs.h" | 11 #include "chrome/browser/prefs/proxy_prefs.h" |
| 11 #include "testing/gtest/include/gtest/gtest.h" | 12 #include "testing/gtest/include/gtest/gtest.h" |
| 12 | 13 |
| 14 struct ProxyPrefsHolder { |
| 15 ProxyPrefs::ProxyMode mode; |
| 16 std::string pac_url; |
| 17 std::string proxy_server; |
| 18 std::string bypass_list; |
| 19 }; |
| 20 |
| 13 TEST(ProxyPrefsTest, StringToProxyMode) { | 21 TEST(ProxyPrefsTest, StringToProxyMode) { |
| 14 ProxyPrefs::ProxyMode mode; | 22 ProxyPrefs::ProxyMode mode; |
| 15 EXPECT_TRUE(ProxyPrefs::StringToProxyMode("direct", &mode)); | 23 EXPECT_TRUE(ProxyPrefs::StringToProxyMode("direct", &mode)); |
| 16 EXPECT_EQ(ProxyPrefs::MODE_DIRECT, mode); | 24 EXPECT_EQ(ProxyPrefs::MODE_DIRECT, mode); |
| 17 EXPECT_TRUE(ProxyPrefs::StringToProxyMode("auto_detect", &mode)); | 25 EXPECT_TRUE(ProxyPrefs::StringToProxyMode("auto_detect", &mode)); |
| 18 EXPECT_EQ(ProxyPrefs::MODE_AUTO_DETECT, mode); | 26 EXPECT_EQ(ProxyPrefs::MODE_AUTO_DETECT, mode); |
| 19 EXPECT_TRUE(ProxyPrefs::StringToProxyMode("pac_script", &mode)); | 27 EXPECT_TRUE(ProxyPrefs::StringToProxyMode("pac_script", &mode)); |
| 20 EXPECT_EQ(ProxyPrefs::MODE_PAC_SCRIPT, mode); | 28 EXPECT_EQ(ProxyPrefs::MODE_PAC_SCRIPT, mode); |
| 21 EXPECT_TRUE(ProxyPrefs::StringToProxyMode("system", &mode)); | 29 EXPECT_TRUE(ProxyPrefs::StringToProxyMode("system", &mode)); |
| 22 EXPECT_EQ(ProxyPrefs::MODE_SYSTEM, mode); | 30 EXPECT_EQ(ProxyPrefs::MODE_SYSTEM, mode); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 43 EXPECT_TRUE(ProxyPrefs::IntToProxyMode(2, &mode)); | 51 EXPECT_TRUE(ProxyPrefs::IntToProxyMode(2, &mode)); |
| 44 EXPECT_EQ(ProxyPrefs::MODE_PAC_SCRIPT, mode); | 52 EXPECT_EQ(ProxyPrefs::MODE_PAC_SCRIPT, mode); |
| 45 EXPECT_TRUE(ProxyPrefs::IntToProxyMode(3, &mode)); | 53 EXPECT_TRUE(ProxyPrefs::IntToProxyMode(3, &mode)); |
| 46 EXPECT_EQ(ProxyPrefs::MODE_FIXED_SERVERS, mode); | 54 EXPECT_EQ(ProxyPrefs::MODE_FIXED_SERVERS, mode); |
| 47 EXPECT_TRUE(ProxyPrefs::IntToProxyMode(4, &mode)); | 55 EXPECT_TRUE(ProxyPrefs::IntToProxyMode(4, &mode)); |
| 48 EXPECT_EQ(ProxyPrefs::MODE_SYSTEM, mode); | 56 EXPECT_EQ(ProxyPrefs::MODE_SYSTEM, mode); |
| 49 | 57 |
| 50 EXPECT_FALSE(ProxyPrefs::IntToProxyMode(-1, &mode)); | 58 EXPECT_FALSE(ProxyPrefs::IntToProxyMode(-1, &mode)); |
| 51 EXPECT_FALSE(ProxyPrefs::IntToProxyMode(ProxyPrefs::kModeCount, &mode)); | 59 EXPECT_FALSE(ProxyPrefs::IntToProxyMode(ProxyPrefs::kModeCount, &mode)); |
| 52 } | 60 } |
| 61 |
| 62 TEST(ProxyPrefsTest, CreateDirect) { |
| 63 scoped_ptr<DictionaryValue> dict_value(ProxyPrefsDictionary::CreateDirect()); |
| 64 ProxyPrefsDictionary dict(dict_value.get()); |
| 65 ProxyPrefsHolder h; |
| 66 |
| 67 ASSERT_TRUE(dict.GetMode(&h.mode)); |
| 68 EXPECT_EQ(ProxyPrefs::MODE_DIRECT, h.mode); |
| 69 ASSERT_FALSE(dict.GetPacUrl(&h.bypass_list)); |
| 70 ASSERT_FALSE(dict.GetProxyServer(&h.proxy_server)); |
| 71 ASSERT_FALSE(dict.GetBypassList(&h.bypass_list)); |
| 72 } |
| 73 |
| 74 TEST(ProxyPrefsTest, CreateAutoDetect) { |
| 75 scoped_ptr<DictionaryValue> dict_value( |
| 76 ProxyPrefsDictionary::CreateAutoDetect()); |
| 77 ProxyPrefsDictionary dict(dict_value.get()); |
| 78 ProxyPrefsHolder h; |
| 79 |
| 80 ASSERT_TRUE(dict.GetMode(&h.mode)); |
| 81 EXPECT_EQ(ProxyPrefs::MODE_AUTO_DETECT, h.mode); |
| 82 ASSERT_FALSE(dict.GetPacUrl(&h.bypass_list)); |
| 83 ASSERT_FALSE(dict.GetProxyServer(&h.proxy_server)); |
| 84 ASSERT_FALSE(dict.GetBypassList(&h.bypass_list)); |
| 85 } |
| 86 |
| 87 TEST(ProxyPrefsTest, CreatePacScript) { |
| 88 scoped_ptr<DictionaryValue> dict_value( |
| 89 ProxyPrefsDictionary::CreatePacScript("pac")); |
| 90 ProxyPrefsDictionary dict(dict_value.get()); |
| 91 ProxyPrefsHolder h; |
| 92 |
| 93 ASSERT_TRUE(dict.GetMode(&h.mode)); |
| 94 EXPECT_EQ(ProxyPrefs::MODE_PAC_SCRIPT, h.mode); |
| 95 ASSERT_TRUE(dict.GetPacUrl(&h.bypass_list)); |
| 96 EXPECT_EQ("pac", h.bypass_list); |
| 97 ASSERT_FALSE(dict.GetProxyServer(&h.proxy_server)); |
| 98 ASSERT_FALSE(dict.GetBypassList(&h.bypass_list)); |
| 99 } |
| 100 |
| 101 TEST(ProxyPrefsTest, CreateFixedServers) { |
| 102 scoped_ptr<DictionaryValue> dict_value( |
| 103 ProxyPrefsDictionary::CreateFixedServers("http://1.2.3.4", "http://foo")); |
| 104 ProxyPrefsDictionary dict(dict_value.get()); |
| 105 ProxyPrefsHolder h; |
| 106 |
| 107 ASSERT_TRUE(dict.GetMode(&h.mode)); |
| 108 EXPECT_EQ(ProxyPrefs::MODE_FIXED_SERVERS, h.mode); |
| 109 ASSERT_FALSE(dict.GetPacUrl(&h.bypass_list)); |
| 110 ASSERT_TRUE(dict.GetProxyServer(&h.proxy_server)); |
| 111 EXPECT_EQ("http://1.2.3.4", h.proxy_server); |
| 112 ASSERT_TRUE(dict.GetBypassList(&h.bypass_list)); |
| 113 EXPECT_EQ("http://foo", h.bypass_list); |
| 114 } |
| 115 |
| 116 TEST(ProxyPrefsTest, CreateSystem) { |
| 117 scoped_ptr<DictionaryValue> dict_value(ProxyPrefsDictionary::CreateSystem()); |
| 118 ProxyPrefsDictionary dict(dict_value.get()); |
| 119 ProxyPrefsHolder h; |
| 120 |
| 121 ASSERT_TRUE(dict.GetMode(&h.mode)); |
| 122 EXPECT_EQ(ProxyPrefs::MODE_SYSTEM, h.mode); |
| 123 ASSERT_FALSE(dict.GetPacUrl(&h.bypass_list)); |
| 124 ASSERT_FALSE(dict.GetProxyServer(&h.proxy_server)); |
| 125 ASSERT_FALSE(dict.GetBypassList(&h.bypass_list)); |
| 126 } |
| OLD | NEW |