OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/browser/chromeos/policy/configuration_policy_handler_chromeos.h
" | 5 #include "chrome/browser/chromeos/policy/configuration_policy_handler_chromeos.h
" |
6 | 6 |
7 #include "base/callback.h" | 7 #include "base/callback.h" |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/prefs/pref_value_map.h" | 9 #include "base/prefs/pref_value_map.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 " \"SSID\": \"ssid\"," | 215 " \"SSID\": \"ssid\"," |
216 " \"Passphrase\": \"pass\"," | 216 " \"Passphrase\": \"pass\"," |
217 " }" | 217 " }" |
218 " }]" | 218 " }]" |
219 "}"); | 219 "}"); |
220 | 220 |
221 PolicyMap policy_map; | 221 PolicyMap policy_map; |
222 policy_map.Set(key::kOpenNetworkConfiguration, | 222 policy_map.Set(key::kOpenNetworkConfiguration, |
223 POLICY_LEVEL_MANDATORY, | 223 POLICY_LEVEL_MANDATORY, |
224 POLICY_SCOPE_USER, | 224 POLICY_SCOPE_USER, |
225 Value::CreateStringValue(kTestONC), | 225 base::Value::CreateStringValue(kTestONC), |
226 NULL); | 226 NULL); |
227 scoped_ptr<NetworkConfigurationPolicyHandler> handler( | 227 scoped_ptr<NetworkConfigurationPolicyHandler> handler( |
228 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); | 228 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); |
229 PolicyErrorMap errors; | 229 PolicyErrorMap errors; |
230 EXPECT_TRUE(handler->CheckPolicySettings(policy_map, &errors)); | 230 EXPECT_TRUE(handler->CheckPolicySettings(policy_map, &errors)); |
231 EXPECT_TRUE(errors.GetErrors(key::kOpenNetworkConfiguration).empty()); | 231 EXPECT_TRUE(errors.GetErrors(key::kOpenNetworkConfiguration).empty()); |
232 } | 232 } |
233 | 233 |
234 TEST(NetworkConfigurationPolicyHandlerTest, WrongType) { | 234 TEST(NetworkConfigurationPolicyHandlerTest, WrongType) { |
235 PolicyMap policy_map; | 235 PolicyMap policy_map; |
236 policy_map.Set(key::kOpenNetworkConfiguration, | 236 policy_map.Set(key::kOpenNetworkConfiguration, |
237 POLICY_LEVEL_MANDATORY, | 237 POLICY_LEVEL_MANDATORY, |
238 POLICY_SCOPE_USER, | 238 POLICY_SCOPE_USER, |
239 Value::CreateBooleanValue(false), | 239 base::Value::CreateBooleanValue(false), |
240 NULL); | 240 NULL); |
241 scoped_ptr<NetworkConfigurationPolicyHandler> handler( | 241 scoped_ptr<NetworkConfigurationPolicyHandler> handler( |
242 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); | 242 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); |
243 PolicyErrorMap errors; | 243 PolicyErrorMap errors; |
244 EXPECT_FALSE(handler->CheckPolicySettings(policy_map, &errors)); | 244 EXPECT_FALSE(handler->CheckPolicySettings(policy_map, &errors)); |
245 EXPECT_FALSE(errors.GetErrors(key::kOpenNetworkConfiguration).empty()); | 245 EXPECT_FALSE(errors.GetErrors(key::kOpenNetworkConfiguration).empty()); |
246 } | 246 } |
247 | 247 |
248 TEST(NetworkConfigurationPolicyHandlerTest, JSONParseError) { | 248 TEST(NetworkConfigurationPolicyHandlerTest, JSONParseError) { |
249 const std::string kTestONC("I'm not proper JSON!"); | 249 const std::string kTestONC("I'm not proper JSON!"); |
250 PolicyMap policy_map; | 250 PolicyMap policy_map; |
251 policy_map.Set(key::kOpenNetworkConfiguration, | 251 policy_map.Set(key::kOpenNetworkConfiguration, |
252 POLICY_LEVEL_MANDATORY, | 252 POLICY_LEVEL_MANDATORY, |
253 POLICY_SCOPE_USER, | 253 POLICY_SCOPE_USER, |
254 Value::CreateStringValue(kTestONC), | 254 base::Value::CreateStringValue(kTestONC), |
255 NULL); | 255 NULL); |
256 scoped_ptr<NetworkConfigurationPolicyHandler> handler( | 256 scoped_ptr<NetworkConfigurationPolicyHandler> handler( |
257 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); | 257 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); |
258 PolicyErrorMap errors; | 258 PolicyErrorMap errors; |
259 EXPECT_FALSE(handler->CheckPolicySettings(policy_map, &errors)); | 259 EXPECT_FALSE(handler->CheckPolicySettings(policy_map, &errors)); |
260 EXPECT_FALSE(errors.GetErrors(key::kOpenNetworkConfiguration).empty()); | 260 EXPECT_FALSE(errors.GetErrors(key::kOpenNetworkConfiguration).empty()); |
261 } | 261 } |
262 | 262 |
263 TEST(NetworkConfigurationPolicyHandlerTest, Sanitization) { | 263 TEST(NetworkConfigurationPolicyHandlerTest, Sanitization) { |
264 const std::string kTestONC( | 264 const std::string kTestONC( |
265 "{" | 265 "{" |
266 " \"NetworkConfigurations\": [{" | 266 " \"NetworkConfigurations\": [{" |
267 " \"GUID\": \"{485d6076-dd44-6b6d-69787465725f5045}\"," | 267 " \"GUID\": \"{485d6076-dd44-6b6d-69787465725f5045}\"," |
268 " \"Type\": \"WiFi\"," | 268 " \"Type\": \"WiFi\"," |
269 " \"Name\": \"some name\"," | 269 " \"Name\": \"some name\"," |
270 " \"WiFi\": {" | 270 " \"WiFi\": {" |
271 " \"Security\": \"WEP-PSK\"," | 271 " \"Security\": \"WEP-PSK\"," |
272 " \"SSID\": \"ssid\"," | 272 " \"SSID\": \"ssid\"," |
273 " \"Passphrase\": \"pass\"," | 273 " \"Passphrase\": \"pass\"," |
274 " }" | 274 " }" |
275 " }]" | 275 " }]" |
276 "}"); | 276 "}"); |
277 | 277 |
278 PolicyMap policy_map; | 278 PolicyMap policy_map; |
279 policy_map.Set(key::kOpenNetworkConfiguration, | 279 policy_map.Set(key::kOpenNetworkConfiguration, |
280 POLICY_LEVEL_MANDATORY, | 280 POLICY_LEVEL_MANDATORY, |
281 POLICY_SCOPE_USER, | 281 POLICY_SCOPE_USER, |
282 Value::CreateStringValue(kTestONC), | 282 base::Value::CreateStringValue(kTestONC), |
283 NULL); | 283 NULL); |
284 scoped_ptr<NetworkConfigurationPolicyHandler> handler( | 284 scoped_ptr<NetworkConfigurationPolicyHandler> handler( |
285 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); | 285 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); |
286 PolicyErrorMap errors; | 286 PolicyErrorMap errors; |
287 handler->PrepareForDisplaying(&policy_map); | 287 handler->PrepareForDisplaying(&policy_map); |
288 const Value* sanitized = policy_map.GetValue(key::kOpenNetworkConfiguration); | 288 const base::Value* sanitized = |
| 289 policy_map.GetValue(key::kOpenNetworkConfiguration); |
289 ASSERT_TRUE(sanitized); | 290 ASSERT_TRUE(sanitized); |
290 std::string sanitized_onc; | 291 std::string sanitized_onc; |
291 EXPECT_TRUE(sanitized->GetAsString(&sanitized_onc)); | 292 EXPECT_TRUE(sanitized->GetAsString(&sanitized_onc)); |
292 EXPECT_FALSE(sanitized_onc.empty()); | 293 EXPECT_FALSE(sanitized_onc.empty()); |
293 EXPECT_EQ(std::string::npos, sanitized_onc.find("pass")); | 294 EXPECT_EQ(std::string::npos, sanitized_onc.find("pass")); |
294 } | 295 } |
295 | 296 |
296 TEST(PinnedLauncherAppsPolicyHandler, PrefTranslation) { | 297 TEST(PinnedLauncherAppsPolicyHandler, PrefTranslation) { |
297 base::ListValue list; | 298 base::ListValue list; |
298 PolicyMap policy_map; | 299 PolicyMap policy_map; |
(...skipping 24 matching lines...) Expand all Loading... |
323 TEST(LoginScreenPowerManagementPolicyHandlerTest, Empty) { | 324 TEST(LoginScreenPowerManagementPolicyHandlerTest, Empty) { |
324 PolicyMap policy_map; | 325 PolicyMap policy_map; |
325 LoginScreenPowerManagementPolicyHandler handler; | 326 LoginScreenPowerManagementPolicyHandler handler; |
326 PolicyErrorMap errors; | 327 PolicyErrorMap errors; |
327 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); | 328 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); |
328 EXPECT_TRUE(errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); | 329 EXPECT_TRUE(errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); |
329 } | 330 } |
330 | 331 |
331 TEST(LoginScreenPowerManagementPolicyHandlerTest, ValidPolicy) { | 332 TEST(LoginScreenPowerManagementPolicyHandlerTest, ValidPolicy) { |
332 PolicyMap policy_map; | 333 PolicyMap policy_map; |
333 policy_map.Set(key::kDeviceLoginScreenPowerManagement, | 334 policy_map.Set( |
334 POLICY_LEVEL_MANDATORY, | 335 key::kDeviceLoginScreenPowerManagement, |
335 POLICY_SCOPE_USER, | 336 POLICY_LEVEL_MANDATORY, |
336 Value::CreateStringValue(kLoginScreenPowerManagementPolicy), | 337 POLICY_SCOPE_USER, |
337 NULL); | 338 base::Value::CreateStringValue(kLoginScreenPowerManagementPolicy), |
| 339 NULL); |
338 LoginScreenPowerManagementPolicyHandler handler; | 340 LoginScreenPowerManagementPolicyHandler handler; |
339 PolicyErrorMap errors; | 341 PolicyErrorMap errors; |
340 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); | 342 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); |
341 EXPECT_TRUE(errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); | 343 EXPECT_TRUE(errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); |
342 } | 344 } |
343 | 345 |
344 TEST(LoginScreenPowerManagementPolicyHandlerTest, WrongType) { | 346 TEST(LoginScreenPowerManagementPolicyHandlerTest, WrongType) { |
345 PolicyMap policy_map; | 347 PolicyMap policy_map; |
346 policy_map.Set(key::kDeviceLoginScreenPowerManagement, | 348 policy_map.Set(key::kDeviceLoginScreenPowerManagement, |
347 POLICY_LEVEL_MANDATORY, | 349 POLICY_LEVEL_MANDATORY, |
348 POLICY_SCOPE_USER, | 350 POLICY_SCOPE_USER, |
349 Value::CreateBooleanValue(false), | 351 base::Value::CreateBooleanValue(false), |
350 NULL); | 352 NULL); |
351 LoginScreenPowerManagementPolicyHandler handler; | 353 LoginScreenPowerManagementPolicyHandler handler; |
352 PolicyErrorMap errors; | 354 PolicyErrorMap errors; |
353 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); | 355 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); |
354 EXPECT_FALSE( | 356 EXPECT_FALSE( |
355 errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); | 357 errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); |
356 } | 358 } |
357 | 359 |
358 TEST(LoginScreenPowerManagementPolicyHandlerTest, JSONParseError) { | 360 TEST(LoginScreenPowerManagementPolicyHandlerTest, JSONParseError) { |
359 const std::string policy("I'm not proper JSON!"); | 361 const std::string policy("I'm not proper JSON!"); |
360 PolicyMap policy_map; | 362 PolicyMap policy_map; |
361 policy_map.Set(key::kDeviceLoginScreenPowerManagement, | 363 policy_map.Set(key::kDeviceLoginScreenPowerManagement, |
362 POLICY_LEVEL_MANDATORY, | 364 POLICY_LEVEL_MANDATORY, |
363 POLICY_SCOPE_USER, | 365 POLICY_SCOPE_USER, |
364 Value::CreateStringValue(policy), | 366 base::Value::CreateStringValue(policy), |
365 NULL); | 367 NULL); |
366 LoginScreenPowerManagementPolicyHandler handler; | 368 LoginScreenPowerManagementPolicyHandler handler; |
367 PolicyErrorMap errors; | 369 PolicyErrorMap errors; |
368 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); | 370 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); |
369 EXPECT_FALSE( | 371 EXPECT_FALSE( |
370 errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); | 372 errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); |
371 } | 373 } |
372 | 374 |
373 } // namespace policy | 375 } // namespace policy |
OLD | NEW |