OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/memory/scoped_ptr.h" | 7 #include "base/memory/scoped_ptr.h" |
8 #include "base/values.h" | 8 #include "base/values.h" |
9 #include "chrome/browser/net/proxy_policy_handler.h" | 9 #include "chrome/browser/net/proxy_policy_handler.h" |
10 #include "chrome/browser/prefs/proxy_config_dictionary.h" | 10 #include "chrome/browser/prefs/proxy_config_dictionary.h" |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
78 POLICY_LEVEL_MANDATORY, | 78 POLICY_LEVEL_MANDATORY, |
79 POLICY_SCOPE_USER, | 79 POLICY_SCOPE_USER, |
80 new base::StringValue("http://chromium.org/override"), | 80 new base::StringValue("http://chromium.org/override"), |
81 NULL); | 81 NULL); |
82 policy.Set(key::kProxyServer, | 82 policy.Set(key::kProxyServer, |
83 POLICY_LEVEL_MANDATORY, | 83 POLICY_LEVEL_MANDATORY, |
84 POLICY_SCOPE_USER, | 84 POLICY_SCOPE_USER, |
85 new base::StringValue("chromium.org"), | 85 new base::StringValue("chromium.org"), |
86 NULL); | 86 NULL); |
87 policy.Set( | 87 policy.Set( |
88 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 88 key::kProxyServerMode, |
89 base::Value::CreateIntegerValue( | 89 POLICY_LEVEL_MANDATORY, |
| 90 POLICY_SCOPE_USER, |
| 91 new base::FundamentalValue( |
90 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE), | 92 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE), |
91 NULL); | 93 NULL); |
92 UpdateProviderPolicy(policy); | 94 UpdateProviderPolicy(policy); |
93 | 95 |
94 VerifyProxyPrefs("chromium.org", | 96 VerifyProxyPrefs("chromium.org", |
95 std::string(), | 97 std::string(), |
96 "http://chromium.org/override", | 98 "http://chromium.org/override", |
97 ProxyPrefs::MODE_FIXED_SERVERS); | 99 ProxyPrefs::MODE_FIXED_SERVERS); |
98 } | 100 } |
99 | 101 |
100 TEST_F(ProxyPolicyHandlerTest, ManualOptionsReversedApplyOrder) { | 102 TEST_F(ProxyPolicyHandlerTest, ManualOptionsReversedApplyOrder) { |
101 PolicyMap policy; | 103 PolicyMap policy; |
102 policy.Set( | 104 policy.Set( |
103 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 105 key::kProxyServerMode, |
104 base::Value::CreateIntegerValue( | 106 POLICY_LEVEL_MANDATORY, |
| 107 POLICY_SCOPE_USER, |
| 108 new base::FundamentalValue( |
105 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE), | 109 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE), |
106 NULL); | 110 NULL); |
107 policy.Set(key::kProxyBypassList, | 111 policy.Set(key::kProxyBypassList, |
108 POLICY_LEVEL_MANDATORY, | 112 POLICY_LEVEL_MANDATORY, |
109 POLICY_SCOPE_USER, | 113 POLICY_SCOPE_USER, |
110 new base::StringValue("http://chromium.org/override"), | 114 new base::StringValue("http://chromium.org/override"), |
111 NULL); | 115 NULL); |
112 policy.Set(key::kProxyServer, | 116 policy.Set(key::kProxyServer, |
113 POLICY_LEVEL_MANDATORY, | 117 POLICY_LEVEL_MANDATORY, |
114 POLICY_SCOPE_USER, | 118 POLICY_SCOPE_USER, |
115 new base::StringValue("chromium.org"), | 119 new base::StringValue("chromium.org"), |
116 NULL); | 120 NULL); |
117 UpdateProviderPolicy(policy); | 121 UpdateProviderPolicy(policy); |
118 | 122 |
119 VerifyProxyPrefs("chromium.org", | 123 VerifyProxyPrefs("chromium.org", |
120 std::string(), | 124 std::string(), |
121 "http://chromium.org/override", | 125 "http://chromium.org/override", |
122 ProxyPrefs::MODE_FIXED_SERVERS); | 126 ProxyPrefs::MODE_FIXED_SERVERS); |
123 } | 127 } |
124 | 128 |
125 TEST_F(ProxyPolicyHandlerTest, ManualOptionsInvalid) { | 129 TEST_F(ProxyPolicyHandlerTest, ManualOptionsInvalid) { |
126 PolicyMap policy; | 130 PolicyMap policy; |
127 policy.Set( | 131 policy.Set( |
128 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 132 key::kProxyServerMode, |
129 base::Value::CreateIntegerValue( | 133 POLICY_LEVEL_MANDATORY, |
| 134 POLICY_SCOPE_USER, |
| 135 new base::FundamentalValue( |
130 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE), | 136 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE), |
131 NULL); | 137 NULL); |
132 UpdateProviderPolicy(policy); | 138 UpdateProviderPolicy(policy); |
133 | 139 |
134 const base::Value* value = NULL; | 140 const base::Value* value = NULL; |
135 EXPECT_FALSE(store_->GetValue(prefs::kProxy, &value)); | 141 EXPECT_FALSE(store_->GetValue(prefs::kProxy, &value)); |
136 } | 142 } |
137 | 143 |
138 TEST_F(ProxyPolicyHandlerTest, NoProxyServerMode) { | 144 TEST_F(ProxyPolicyHandlerTest, NoProxyServerMode) { |
139 PolicyMap policy; | 145 PolicyMap policy; |
140 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 146 policy.Set(key::kProxyServerMode, |
141 base::Value::CreateIntegerValue( | 147 POLICY_LEVEL_MANDATORY, |
142 ProxyPolicyHandler::PROXY_SERVER_MODE), | 148 POLICY_SCOPE_USER, |
| 149 new base::FundamentalValue(ProxyPolicyHandler::PROXY_SERVER_MODE), |
143 NULL); | 150 NULL); |
144 UpdateProviderPolicy(policy); | 151 UpdateProviderPolicy(policy); |
145 VerifyProxyPrefs( | 152 VerifyProxyPrefs( |
146 std::string(), std::string(), std::string(), ProxyPrefs::MODE_DIRECT); | 153 std::string(), std::string(), std::string(), ProxyPrefs::MODE_DIRECT); |
147 } | 154 } |
148 | 155 |
149 TEST_F(ProxyPolicyHandlerTest, NoProxyModeName) { | 156 TEST_F(ProxyPolicyHandlerTest, NoProxyModeName) { |
150 PolicyMap policy; | 157 PolicyMap policy; |
151 policy.Set(key::kProxyMode, | 158 policy.Set(key::kProxyMode, |
152 POLICY_LEVEL_MANDATORY, | 159 POLICY_LEVEL_MANDATORY, |
153 POLICY_SCOPE_USER, | 160 POLICY_SCOPE_USER, |
154 new base::StringValue(ProxyPrefs::kDirectProxyModeName), | 161 new base::StringValue(ProxyPrefs::kDirectProxyModeName), |
155 NULL); | 162 NULL); |
156 UpdateProviderPolicy(policy); | 163 UpdateProviderPolicy(policy); |
157 VerifyProxyPrefs( | 164 VerifyProxyPrefs( |
158 std::string(), std::string(), std::string(), ProxyPrefs::MODE_DIRECT); | 165 std::string(), std::string(), std::string(), ProxyPrefs::MODE_DIRECT); |
159 } | 166 } |
160 | 167 |
161 TEST_F(ProxyPolicyHandlerTest, AutoDetectProxyServerMode) { | 168 TEST_F(ProxyPolicyHandlerTest, AutoDetectProxyServerMode) { |
162 PolicyMap policy; | 169 PolicyMap policy; |
163 policy.Set( | 170 policy.Set(key::kProxyServerMode, |
164 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 171 POLICY_LEVEL_MANDATORY, |
165 base::Value::CreateIntegerValue( | 172 POLICY_SCOPE_USER, |
166 ProxyPolicyHandler::PROXY_AUTO_DETECT_PROXY_SERVER_MODE), | 173 new base::FundamentalValue( |
167 NULL); | 174 ProxyPolicyHandler::PROXY_AUTO_DETECT_PROXY_SERVER_MODE), |
| 175 NULL); |
168 UpdateProviderPolicy(policy); | 176 UpdateProviderPolicy(policy); |
169 VerifyProxyPrefs(std::string(), | 177 VerifyProxyPrefs(std::string(), |
170 std::string(), | 178 std::string(), |
171 std::string(), | 179 std::string(), |
172 ProxyPrefs::MODE_AUTO_DETECT); | 180 ProxyPrefs::MODE_AUTO_DETECT); |
173 } | 181 } |
174 | 182 |
175 TEST_F(ProxyPolicyHandlerTest, AutoDetectProxyModeName) { | 183 TEST_F(ProxyPolicyHandlerTest, AutoDetectProxyModeName) { |
176 PolicyMap policy; | 184 PolicyMap policy; |
177 policy.Set(key::kProxyMode, | 185 policy.Set(key::kProxyMode, |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
238 NULL); | 246 NULL); |
239 UpdateProviderPolicy(policy); | 247 UpdateProviderPolicy(policy); |
240 VerifyProxyPrefs(std::string(), | 248 VerifyProxyPrefs(std::string(), |
241 "http://short.org/proxy.pac", | 249 "http://short.org/proxy.pac", |
242 std::string(), | 250 std::string(), |
243 ProxyPrefs::MODE_PAC_SCRIPT); | 251 ProxyPrefs::MODE_PAC_SCRIPT); |
244 } | 252 } |
245 | 253 |
246 TEST_F(ProxyPolicyHandlerTest, UseSystemProxyServerMode) { | 254 TEST_F(ProxyPolicyHandlerTest, UseSystemProxyServerMode) { |
247 PolicyMap policy; | 255 PolicyMap policy; |
248 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 256 policy.Set(key::kProxyServerMode, |
249 base::Value::CreateIntegerValue( | 257 POLICY_LEVEL_MANDATORY, |
250 ProxyPolicyHandler::PROXY_USE_SYSTEM_PROXY_SERVER_MODE), | 258 POLICY_SCOPE_USER, |
251 NULL); | 259 new base::FundamentalValue( |
| 260 ProxyPolicyHandler::PROXY_USE_SYSTEM_PROXY_SERVER_MODE), |
| 261 NULL); |
252 UpdateProviderPolicy(policy); | 262 UpdateProviderPolicy(policy); |
253 VerifyProxyPrefs( | 263 VerifyProxyPrefs( |
254 std::string(), std::string(), std::string(), ProxyPrefs::MODE_SYSTEM); | 264 std::string(), std::string(), std::string(), ProxyPrefs::MODE_SYSTEM); |
255 } | 265 } |
256 | 266 |
257 TEST_F(ProxyPolicyHandlerTest, UseSystemProxyMode) { | 267 TEST_F(ProxyPolicyHandlerTest, UseSystemProxyMode) { |
258 PolicyMap policy; | 268 PolicyMap policy; |
259 policy.Set(key::kProxyMode, | 269 policy.Set(key::kProxyMode, |
260 POLICY_LEVEL_MANDATORY, | 270 POLICY_LEVEL_MANDATORY, |
261 POLICY_SCOPE_USER, | 271 POLICY_SCOPE_USER, |
262 new base::StringValue(ProxyPrefs::kSystemProxyModeName), | 272 new base::StringValue(ProxyPrefs::kSystemProxyModeName), |
263 NULL); | 273 NULL); |
264 UpdateProviderPolicy(policy); | 274 UpdateProviderPolicy(policy); |
265 VerifyProxyPrefs( | 275 VerifyProxyPrefs( |
266 std::string(), std::string(), std::string(), ProxyPrefs::MODE_SYSTEM); | 276 std::string(), std::string(), std::string(), ProxyPrefs::MODE_SYSTEM); |
267 } | 277 } |
268 | 278 |
269 TEST_F(ProxyPolicyHandlerTest, | 279 TEST_F(ProxyPolicyHandlerTest, |
270 ProxyModeOverridesProxyServerMode) { | 280 ProxyModeOverridesProxyServerMode) { |
271 PolicyMap policy; | 281 PolicyMap policy; |
272 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 282 policy.Set(key::kProxyServerMode, |
273 base::Value::CreateIntegerValue( | 283 POLICY_LEVEL_MANDATORY, |
274 ProxyPolicyHandler::PROXY_SERVER_MODE), | 284 POLICY_SCOPE_USER, |
| 285 new base::FundamentalValue(ProxyPolicyHandler::PROXY_SERVER_MODE), |
275 NULL); | 286 NULL); |
276 policy.Set(key::kProxyMode, | 287 policy.Set(key::kProxyMode, |
277 POLICY_LEVEL_MANDATORY, | 288 POLICY_LEVEL_MANDATORY, |
278 POLICY_SCOPE_USER, | 289 POLICY_SCOPE_USER, |
279 new base::StringValue(ProxyPrefs::kAutoDetectProxyModeName), | 290 new base::StringValue(ProxyPrefs::kAutoDetectProxyModeName), |
280 NULL); | 291 NULL); |
281 UpdateProviderPolicy(policy); | 292 UpdateProviderPolicy(policy); |
282 VerifyProxyPrefs(std::string(), | 293 VerifyProxyPrefs(std::string(), |
283 std::string(), | 294 std::string(), |
284 std::string(), | 295 std::string(), |
(...skipping 12 matching lines...) Expand all Loading... |
297 POLICY_LEVEL_MANDATORY, | 308 POLICY_LEVEL_MANDATORY, |
298 POLICY_SCOPE_USER, | 309 POLICY_SCOPE_USER, |
299 new base::StringValue("http://chromium.org/override"), | 310 new base::StringValue("http://chromium.org/override"), |
300 NULL); | 311 NULL); |
301 policy.Set(key::kProxyServer, | 312 policy.Set(key::kProxyServer, |
302 POLICY_LEVEL_MANDATORY, | 313 POLICY_LEVEL_MANDATORY, |
303 POLICY_SCOPE_USER, | 314 POLICY_SCOPE_USER, |
304 new base::StringValue("chromium.org"), | 315 new base::StringValue("chromium.org"), |
305 NULL); | 316 NULL); |
306 for (int i = 0; i < ProxyPolicyHandler::MODE_COUNT; ++i) { | 317 for (int i = 0; i < ProxyPolicyHandler::MODE_COUNT; ++i) { |
307 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, | 318 policy.Set(key::kProxyServerMode, |
308 POLICY_SCOPE_USER, base::Value::CreateIntegerValue(i), NULL); | 319 POLICY_LEVEL_MANDATORY, |
| 320 POLICY_SCOPE_USER, |
| 321 new base::FundamentalValue(i), |
| 322 NULL); |
309 UpdateProviderPolicy(policy); | 323 UpdateProviderPolicy(policy); |
310 const base::Value* value = NULL; | 324 const base::Value* value = NULL; |
311 EXPECT_FALSE(store_->GetValue(prefs::kProxy, &value)); | 325 EXPECT_FALSE(store_->GetValue(prefs::kProxy, &value)); |
312 } | 326 } |
313 } | 327 } |
314 | 328 |
315 } // namespace policy | 329 } // namespace policy |
OLD | NEW |