Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(554)

Side by Side Diff: components/policy/core/browser/proxy_policy_handler_unittest.cc

Issue 2664753002: Remove base::StringValue (Closed)
Patch Set: Rebase Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "components/policy/core/browser/proxy_policy_handler.h" 5 #include "components/policy/core/browser/proxy_policy_handler.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include <string> 8 #include <string>
9 9
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 } 70 }
71 ProxyPrefs::ProxyMode mode; 71 ProxyPrefs::ProxyMode mode;
72 ASSERT_TRUE(dict.GetMode(&mode)); 72 ASSERT_TRUE(dict.GetMode(&mode));
73 EXPECT_EQ(expected_proxy_mode, mode); 73 EXPECT_EQ(expected_proxy_mode, mode);
74 } 74 }
75 }; 75 };
76 76
77 TEST_F(ProxyPolicyHandlerTest, ManualOptions) { 77 TEST_F(ProxyPolicyHandlerTest, ManualOptions) {
78 PolicyMap policy; 78 PolicyMap policy;
79 policy.Set(key::kProxyBypassList, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 79 policy.Set(key::kProxyBypassList, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
80 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 80 POLICY_SOURCE_CLOUD,
81 "http://chromium.org/override"), 81 base::MakeUnique<base::Value>("http://chromium.org/override"),
82 nullptr); 82 nullptr);
83 policy.Set(key::kProxyServer, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 83 policy.Set(key::kProxyServer, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
84 POLICY_SOURCE_CLOUD, 84 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>("chromium.org"),
85 base::MakeUnique<base::StringValue>("chromium.org"), nullptr); 85 nullptr);
86 policy.Set( 86 policy.Set(
87 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 87 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
88 POLICY_SOURCE_CLOUD, 88 POLICY_SOURCE_CLOUD,
89 base::MakeUnique<base::Value>( 89 base::MakeUnique<base::Value>(
90 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE), 90 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE),
91 nullptr); 91 nullptr);
92 UpdateProviderPolicy(policy); 92 UpdateProviderPolicy(policy);
93 93
94 VerifyProxyPrefs("chromium.org", 94 VerifyProxyPrefs("chromium.org",
95 std::string(), 95 std::string(),
96 "http://chromium.org/override", 96 "http://chromium.org/override",
97 ProxyPrefs::MODE_FIXED_SERVERS); 97 ProxyPrefs::MODE_FIXED_SERVERS);
98 } 98 }
99 99
100 TEST_F(ProxyPolicyHandlerTest, ManualOptionsReversedApplyOrder) { 100 TEST_F(ProxyPolicyHandlerTest, ManualOptionsReversedApplyOrder) {
101 PolicyMap policy; 101 PolicyMap policy;
102 policy.Set( 102 policy.Set(
103 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 103 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
104 POLICY_SOURCE_CLOUD, 104 POLICY_SOURCE_CLOUD,
105 base::MakeUnique<base::Value>( 105 base::MakeUnique<base::Value>(
106 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE), 106 ProxyPolicyHandler::PROXY_MANUALLY_CONFIGURED_PROXY_SERVER_MODE),
107 nullptr); 107 nullptr);
108 policy.Set(key::kProxyBypassList, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 108 policy.Set(key::kProxyBypassList, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
109 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 109 POLICY_SOURCE_CLOUD,
110 "http://chromium.org/override"), 110 base::MakeUnique<base::Value>("http://chromium.org/override"),
111 nullptr); 111 nullptr);
112 policy.Set(key::kProxyServer, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 112 policy.Set(key::kProxyServer, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
113 POLICY_SOURCE_CLOUD, 113 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>("chromium.org"),
114 base::MakeUnique<base::StringValue>("chromium.org"), nullptr); 114 nullptr);
115 UpdateProviderPolicy(policy); 115 UpdateProviderPolicy(policy);
116 116
117 VerifyProxyPrefs("chromium.org", 117 VerifyProxyPrefs("chromium.org",
118 std::string(), 118 std::string(),
119 "http://chromium.org/override", 119 "http://chromium.org/override",
120 ProxyPrefs::MODE_FIXED_SERVERS); 120 ProxyPrefs::MODE_FIXED_SERVERS);
121 } 121 }
122 122
123 TEST_F(ProxyPolicyHandlerTest, ManualOptionsInvalid) { 123 TEST_F(ProxyPolicyHandlerTest, ManualOptionsInvalid) {
124 PolicyMap policy; 124 PolicyMap policy;
(...skipping 17 matching lines...) Expand all
142 base::MakeUnique<base::Value>(ProxyPolicyHandler::PROXY_SERVER_MODE), 142 base::MakeUnique<base::Value>(ProxyPolicyHandler::PROXY_SERVER_MODE),
143 nullptr); 143 nullptr);
144 UpdateProviderPolicy(policy); 144 UpdateProviderPolicy(policy);
145 VerifyProxyPrefs( 145 VerifyProxyPrefs(
146 std::string(), std::string(), std::string(), ProxyPrefs::MODE_DIRECT); 146 std::string(), std::string(), std::string(), ProxyPrefs::MODE_DIRECT);
147 } 147 }
148 148
149 TEST_F(ProxyPolicyHandlerTest, NoProxyModeName) { 149 TEST_F(ProxyPolicyHandlerTest, NoProxyModeName) {
150 PolicyMap policy; 150 PolicyMap policy;
151 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 151 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
152 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 152 POLICY_SOURCE_CLOUD,
153 ProxyPrefs::kDirectProxyModeName), 153 base::MakeUnique<base::Value>(ProxyPrefs::kDirectProxyModeName),
154 nullptr); 154 nullptr);
155 UpdateProviderPolicy(policy); 155 UpdateProviderPolicy(policy);
156 VerifyProxyPrefs( 156 VerifyProxyPrefs(
157 std::string(), std::string(), std::string(), ProxyPrefs::MODE_DIRECT); 157 std::string(), std::string(), std::string(), ProxyPrefs::MODE_DIRECT);
158 } 158 }
159 159
160 TEST_F(ProxyPolicyHandlerTest, AutoDetectProxyServerMode) { 160 TEST_F(ProxyPolicyHandlerTest, AutoDetectProxyServerMode) {
161 PolicyMap policy; 161 PolicyMap policy;
162 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 162 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
163 POLICY_SOURCE_CLOUD, 163 POLICY_SOURCE_CLOUD,
164 base::MakeUnique<base::Value>( 164 base::MakeUnique<base::Value>(
165 ProxyPolicyHandler::PROXY_AUTO_DETECT_PROXY_SERVER_MODE), 165 ProxyPolicyHandler::PROXY_AUTO_DETECT_PROXY_SERVER_MODE),
166 nullptr); 166 nullptr);
167 UpdateProviderPolicy(policy); 167 UpdateProviderPolicy(policy);
168 VerifyProxyPrefs(std::string(), 168 VerifyProxyPrefs(std::string(),
169 std::string(), 169 std::string(),
170 std::string(), 170 std::string(),
171 ProxyPrefs::MODE_AUTO_DETECT); 171 ProxyPrefs::MODE_AUTO_DETECT);
172 } 172 }
173 173
174 TEST_F(ProxyPolicyHandlerTest, AutoDetectProxyModeName) { 174 TEST_F(ProxyPolicyHandlerTest, AutoDetectProxyModeName) {
175 PolicyMap policy; 175 PolicyMap policy;
176 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 176 policy.Set(
177 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 177 key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
178 ProxyPrefs::kAutoDetectProxyModeName), 178 POLICY_SOURCE_CLOUD,
179 nullptr); 179 base::MakeUnique<base::Value>(ProxyPrefs::kAutoDetectProxyModeName),
180 nullptr);
180 UpdateProviderPolicy(policy); 181 UpdateProviderPolicy(policy);
181 VerifyProxyPrefs(std::string(), 182 VerifyProxyPrefs(std::string(),
182 std::string(), 183 std::string(),
183 std::string(), 184 std::string(),
184 ProxyPrefs::MODE_AUTO_DETECT); 185 ProxyPrefs::MODE_AUTO_DETECT);
185 } 186 }
186 187
187 TEST_F(ProxyPolicyHandlerTest, PacScriptProxyMode) { 188 TEST_F(ProxyPolicyHandlerTest, PacScriptProxyMode) {
188 PolicyMap policy; 189 PolicyMap policy;
189 policy.Set(key::kProxyPacUrl, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 190 policy.Set(key::kProxyPacUrl, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
190 POLICY_SOURCE_CLOUD, 191 POLICY_SOURCE_CLOUD,
191 base::MakeUnique<base::StringValue>("http://short.org/proxy.pac"), 192 base::MakeUnique<base::Value>("http://short.org/proxy.pac"),
192 nullptr); 193 nullptr);
193 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 194 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
194 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 195 POLICY_SOURCE_CLOUD,
195 ProxyPrefs::kPacScriptProxyModeName), 196 base::MakeUnique<base::Value>(ProxyPrefs::kPacScriptProxyModeName),
196 nullptr); 197 nullptr);
197 UpdateProviderPolicy(policy); 198 UpdateProviderPolicy(policy);
198 VerifyProxyPrefs(std::string(), 199 VerifyProxyPrefs(std::string(),
199 "http://short.org/proxy.pac", 200 "http://short.org/proxy.pac",
200 std::string(), 201 std::string(),
201 ProxyPrefs::MODE_PAC_SCRIPT); 202 ProxyPrefs::MODE_PAC_SCRIPT);
202 } 203 }
203 204
204 TEST_F(ProxyPolicyHandlerTest, PacScriptProxyModeInvalid) { 205 TEST_F(ProxyPolicyHandlerTest, PacScriptProxyModeInvalid) {
205 PolicyMap policy; 206 PolicyMap policy;
206 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 207 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
207 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 208 POLICY_SOURCE_CLOUD,
208 ProxyPrefs::kPacScriptProxyModeName), 209 base::MakeUnique<base::Value>(ProxyPrefs::kPacScriptProxyModeName),
209 NULL); 210 NULL);
210 UpdateProviderPolicy(policy); 211 UpdateProviderPolicy(policy);
211 const base::Value* value = NULL; 212 const base::Value* value = NULL;
212 EXPECT_FALSE(store_->GetValue(proxy_config::prefs::kProxy, &value)); 213 EXPECT_FALSE(store_->GetValue(proxy_config::prefs::kProxy, &value));
213 } 214 }
214 215
215 // Regression test for http://crbug.com/78016, CPanel returns empty strings 216 // Regression test for http://crbug.com/78016, CPanel returns empty strings
216 // for unset properties. 217 // for unset properties.
217 TEST_F(ProxyPolicyHandlerTest, PacScriptProxyModeBug78016) { 218 TEST_F(ProxyPolicyHandlerTest, PacScriptProxyModeBug78016) {
218 PolicyMap policy; 219 PolicyMap policy;
219 policy.Set(key::kProxyServer, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 220 policy.Set(key::kProxyServer, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
220 POLICY_SOURCE_CLOUD, 221 POLICY_SOURCE_CLOUD,
221 base::WrapUnique(new base::StringValue(std::string())), nullptr); 222 base::WrapUnique(new base::Value(std::string())), nullptr);
223 policy.Set(key::kProxyPacUrl, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
224 POLICY_SOURCE_CLOUD,
225 base::WrapUnique(new base::Value("http://short.org/proxy.pac")),
226 nullptr);
222 policy.Set( 227 policy.Set(
223 key::kProxyPacUrl, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 228 key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
224 POLICY_SOURCE_CLOUD, 229 POLICY_SOURCE_CLOUD,
225 base::WrapUnique(new base::StringValue("http://short.org/proxy.pac")), 230 base::WrapUnique(new base::Value(ProxyPrefs::kPacScriptProxyModeName)),
226 nullptr); 231 nullptr);
227 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
228 POLICY_SOURCE_CLOUD, base::WrapUnique(new base::StringValue(
229 ProxyPrefs::kPacScriptProxyModeName)),
230 nullptr);
231 UpdateProviderPolicy(policy); 232 UpdateProviderPolicy(policy);
232 VerifyProxyPrefs(std::string(), 233 VerifyProxyPrefs(std::string(),
233 "http://short.org/proxy.pac", 234 "http://short.org/proxy.pac",
234 std::string(), 235 std::string(),
235 ProxyPrefs::MODE_PAC_SCRIPT); 236 ProxyPrefs::MODE_PAC_SCRIPT);
236 } 237 }
237 238
238 TEST_F(ProxyPolicyHandlerTest, UseSystemProxyServerMode) { 239 TEST_F(ProxyPolicyHandlerTest, UseSystemProxyServerMode) {
239 PolicyMap policy; 240 PolicyMap policy;
240 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 241 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
241 POLICY_SOURCE_CLOUD, 242 POLICY_SOURCE_CLOUD,
242 base::MakeUnique<base::Value>( 243 base::MakeUnique<base::Value>(
243 ProxyPolicyHandler::PROXY_USE_SYSTEM_PROXY_SERVER_MODE), 244 ProxyPolicyHandler::PROXY_USE_SYSTEM_PROXY_SERVER_MODE),
244 nullptr); 245 nullptr);
245 UpdateProviderPolicy(policy); 246 UpdateProviderPolicy(policy);
246 VerifyProxyPrefs( 247 VerifyProxyPrefs(
247 std::string(), std::string(), std::string(), ProxyPrefs::MODE_SYSTEM); 248 std::string(), std::string(), std::string(), ProxyPrefs::MODE_SYSTEM);
248 } 249 }
249 250
250 TEST_F(ProxyPolicyHandlerTest, UseSystemProxyMode) { 251 TEST_F(ProxyPolicyHandlerTest, UseSystemProxyMode) {
251 PolicyMap policy; 252 PolicyMap policy;
252 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 253 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
253 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 254 POLICY_SOURCE_CLOUD,
254 ProxyPrefs::kSystemProxyModeName), 255 base::MakeUnique<base::Value>(ProxyPrefs::kSystemProxyModeName),
255 nullptr); 256 nullptr);
256 UpdateProviderPolicy(policy); 257 UpdateProviderPolicy(policy);
257 VerifyProxyPrefs( 258 VerifyProxyPrefs(
258 std::string(), std::string(), std::string(), ProxyPrefs::MODE_SYSTEM); 259 std::string(), std::string(), std::string(), ProxyPrefs::MODE_SYSTEM);
259 } 260 }
260 261
261 TEST_F(ProxyPolicyHandlerTest, 262 TEST_F(ProxyPolicyHandlerTest,
262 ProxyModeOverridesProxyServerMode) { 263 ProxyModeOverridesProxyServerMode) {
263 PolicyMap policy; 264 PolicyMap policy;
264 policy.Set( 265 policy.Set(
265 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 266 key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
266 POLICY_SOURCE_CLOUD, 267 POLICY_SOURCE_CLOUD,
267 base::MakeUnique<base::Value>(ProxyPolicyHandler::PROXY_SERVER_MODE), 268 base::MakeUnique<base::Value>(ProxyPolicyHandler::PROXY_SERVER_MODE),
268 nullptr); 269 nullptr);
269 policy.Set(key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 270 policy.Set(
270 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 271 key::kProxyMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
271 ProxyPrefs::kAutoDetectProxyModeName), 272 POLICY_SOURCE_CLOUD,
272 nullptr); 273 base::MakeUnique<base::Value>(ProxyPrefs::kAutoDetectProxyModeName),
274 nullptr);
273 UpdateProviderPolicy(policy); 275 UpdateProviderPolicy(policy);
274 VerifyProxyPrefs(std::string(), 276 VerifyProxyPrefs(std::string(),
275 std::string(), 277 std::string(),
276 std::string(), 278 std::string(),
277 ProxyPrefs::MODE_AUTO_DETECT); 279 ProxyPrefs::MODE_AUTO_DETECT);
278 } 280 }
279 281
280 TEST_F(ProxyPolicyHandlerTest, ProxyInvalid) { 282 TEST_F(ProxyPolicyHandlerTest, ProxyInvalid) {
281 // No mode expects all three parameters being set. 283 // No mode expects all three parameters being set.
282 PolicyMap policy; 284 PolicyMap policy;
283 policy.Set(key::kProxyPacUrl, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 285 policy.Set(key::kProxyPacUrl, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
284 POLICY_SOURCE_CLOUD, 286 POLICY_SOURCE_CLOUD,
285 base::MakeUnique<base::StringValue>("http://short.org/proxy.pac"), 287 base::MakeUnique<base::Value>("http://short.org/proxy.pac"),
286 nullptr); 288 nullptr);
287 policy.Set(key::kProxyBypassList, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 289 policy.Set(key::kProxyBypassList, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
288 POLICY_SOURCE_CLOUD, base::MakeUnique<base::StringValue>( 290 POLICY_SOURCE_CLOUD,
289 "http://chromium.org/override"), 291 base::MakeUnique<base::Value>("http://chromium.org/override"),
290 nullptr); 292 nullptr);
291 policy.Set(key::kProxyServer, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 293 policy.Set(key::kProxyServer, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
292 POLICY_SOURCE_CLOUD, 294 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>("chromium.org"),
293 base::MakeUnique<base::StringValue>("chromium.org"), nullptr); 295 nullptr);
294 for (int i = 0; i < ProxyPolicyHandler::MODE_COUNT; ++i) { 296 for (int i = 0; i < ProxyPolicyHandler::MODE_COUNT; ++i) {
295 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 297 policy.Set(key::kProxyServerMode, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
296 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(i), nullptr); 298 POLICY_SOURCE_CLOUD, base::MakeUnique<base::Value>(i), nullptr);
297 UpdateProviderPolicy(policy); 299 UpdateProviderPolicy(policy);
298 const base::Value* value = nullptr; 300 const base::Value* value = nullptr;
299 EXPECT_FALSE(store_->GetValue(proxy_config::prefs::kProxy, &value)); 301 EXPECT_FALSE(store_->GetValue(proxy_config::prefs::kProxy, &value));
300 } 302 }
301 } 303 }
302 304
303 } // namespace policy 305 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698