| 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 |