| 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/prefs/pref_value_map.h" | 8 #include "base/prefs/pref_value_map.h" |
| 9 #include "chrome/browser/policy/external_data_fetcher.h" | 9 #include "chrome/browser/policy/external_data_fetcher.h" |
| 10 #include "chrome/browser/policy/policy_error_map.h" | 10 #include "chrome/browser/policy/policy_error_map.h" |
| 11 #include "chrome/browser/policy/policy_map.h" | 11 #include "chrome/browser/policy/policy_map.h" |
| 12 #include "chrome/browser/ui/ash/chrome_launcher_prefs.h" | 12 #include "chrome/browser/ui/ash/chrome_launcher_prefs.h" |
| 13 #include "chrome/common/pref_names.h" | 13 #include "chrome/common/pref_names.h" |
| 14 #include "policy/policy_constants.h" | 14 #include "policy/policy_constants.h" |
| 15 #include "testing/gtest/include/gtest/gtest.h" | 15 #include "testing/gtest/include/gtest/gtest.h" |
| 16 | 16 |
| 17 namespace policy { | 17 namespace policy { |
| 18 | 18 |
| 19 namespace { |
| 20 |
| 21 const char kLoginScreenPowerManagementPolicy[] = |
| 22 "{" |
| 23 " \"AC\": {" |
| 24 " \"Delays\": {" |
| 25 " \"ScreenDim\": 5000," |
| 26 " \"ScreenOff\": 7000," |
| 27 " \"Idle\": 9000" |
| 28 " }," |
| 29 " \"IdleAction\": \"DoNothing\"" |
| 30 " }," |
| 31 " \"Battery\": {" |
| 32 " \"Delays\": {" |
| 33 " \"ScreenDim\": 1000," |
| 34 " \"ScreenOff\": 3000," |
| 35 " \"Idle\": 4000" |
| 36 " }," |
| 37 " \"IdleAction\": \"DoNothing\"" |
| 38 " }," |
| 39 " \"LidCloseAction\": \"DoNothing\"," |
| 40 " \"UserActivityScreenDimDelayScale\": 300" |
| 41 "}"; |
| 42 |
| 43 } // namespace |
| 44 |
| 19 TEST(NetworkConfigurationPolicyHandlerTest, Empty) { | 45 TEST(NetworkConfigurationPolicyHandlerTest, Empty) { |
| 20 PolicyMap policy_map; | 46 PolicyMap policy_map; |
| 21 scoped_ptr<NetworkConfigurationPolicyHandler> handler( | 47 scoped_ptr<NetworkConfigurationPolicyHandler> handler( |
| 22 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); | 48 NetworkConfigurationPolicyHandler::CreateForUserPolicy()); |
| 23 PolicyErrorMap errors; | 49 PolicyErrorMap errors; |
| 24 EXPECT_TRUE(handler->CheckPolicySettings(policy_map, &errors)); | 50 EXPECT_TRUE(handler->CheckPolicySettings(policy_map, &errors)); |
| 25 EXPECT_TRUE(errors.GetErrors(key::kOpenNetworkConfiguration).empty()); | 51 EXPECT_TRUE(errors.GetErrors(key::kOpenNetworkConfiguration).empty()); |
| 26 } | 52 } |
| 27 | 53 |
| 28 TEST(NetworkConfigurationPolicyHandlerTest, ValidONC) { | 54 TEST(NetworkConfigurationPolicyHandlerTest, ValidONC) { |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 135 expected_pinned_apps.Append(entry1_dict); | 161 expected_pinned_apps.Append(entry1_dict); |
| 136 list.Append(entry1.DeepCopy()); | 162 list.Append(entry1.DeepCopy()); |
| 137 policy_map.Set(key::kPinnedLauncherApps, POLICY_LEVEL_MANDATORY, | 163 policy_map.Set(key::kPinnedLauncherApps, POLICY_LEVEL_MANDATORY, |
| 138 POLICY_SCOPE_USER, list.DeepCopy(), NULL); | 164 POLICY_SCOPE_USER, list.DeepCopy(), NULL); |
| 139 prefs.Clear(); | 165 prefs.Clear(); |
| 140 handler.ApplyPolicySettings(policy_map, &prefs); | 166 handler.ApplyPolicySettings(policy_map, &prefs); |
| 141 EXPECT_TRUE(prefs.GetValue(prefs::kPinnedLauncherApps, &value)); | 167 EXPECT_TRUE(prefs.GetValue(prefs::kPinnedLauncherApps, &value)); |
| 142 EXPECT_TRUE(base::Value::Equals(&expected_pinned_apps, value)); | 168 EXPECT_TRUE(base::Value::Equals(&expected_pinned_apps, value)); |
| 143 } | 169 } |
| 144 | 170 |
| 171 TEST(LoginScreenPowerManagementPolicyHandlerTest, Empty) { |
| 172 PolicyMap policy_map; |
| 173 LoginScreenPowerManagementPolicyHandler handler; |
| 174 PolicyErrorMap errors; |
| 175 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); |
| 176 EXPECT_TRUE(errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); |
| 177 } |
| 178 |
| 179 TEST(LoginScreenPowerManagementPolicyHandlerTest, ValidPolicy) { |
| 180 PolicyMap policy_map; |
| 181 policy_map.Set(key::kDeviceLoginScreenPowerManagement, |
| 182 POLICY_LEVEL_MANDATORY, |
| 183 POLICY_SCOPE_USER, |
| 184 Value::CreateStringValue(kLoginScreenPowerManagementPolicy), |
| 185 NULL); |
| 186 LoginScreenPowerManagementPolicyHandler handler; |
| 187 PolicyErrorMap errors; |
| 188 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); |
| 189 EXPECT_TRUE(errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); |
| 190 } |
| 191 |
| 192 TEST(LoginScreenPowerManagementPolicyHandlerTest, WrongType) { |
| 193 PolicyMap policy_map; |
| 194 policy_map.Set(key::kDeviceLoginScreenPowerManagement, |
| 195 POLICY_LEVEL_MANDATORY, |
| 196 POLICY_SCOPE_USER, |
| 197 Value::CreateBooleanValue(false), |
| 198 NULL); |
| 199 LoginScreenPowerManagementPolicyHandler handler; |
| 200 PolicyErrorMap errors; |
| 201 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); |
| 202 EXPECT_FALSE( |
| 203 errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); |
| 204 } |
| 205 |
| 206 TEST(LoginScreenPowerManagementPolicyHandlerTest, JSONParseError) { |
| 207 const std::string policy("I'm not proper JSON!"); |
| 208 PolicyMap policy_map; |
| 209 policy_map.Set(key::kDeviceLoginScreenPowerManagement, |
| 210 POLICY_LEVEL_MANDATORY, |
| 211 POLICY_SCOPE_USER, |
| 212 Value::CreateStringValue(policy), |
| 213 NULL); |
| 214 LoginScreenPowerManagementPolicyHandler handler; |
| 215 PolicyErrorMap errors; |
| 216 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); |
| 217 EXPECT_FALSE( |
| 218 errors.GetErrors(key::kDeviceLoginScreenPowerManagement).empty()); |
| 219 } |
| 220 |
| 145 } // namespace policy | 221 } // namespace policy |
| OLD | NEW |