Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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/compiler_specific.h" | 7 #include "base/compiler_specific.h" |
| 8 #include "base/run_loop.h" | 8 #include "base/run_loop.h" |
| 9 #include "base/values.h" | 9 #include "base/values.h" |
| 10 #include "chrome/browser/extensions/api/power/power_api_manager.h" | 10 #include "chrome/browser/extensions/api/power/power_api_manager.h" |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 62 EXPECT_CALL(provider_, RegisterPolicyDomain(_, _)).Times(AnyNumber()); | 62 EXPECT_CALL(provider_, RegisterPolicyDomain(_, _)).Times(AnyNumber()); |
| 63 BrowserPolicyConnector::SetPolicyProviderForTesting(&provider_); | 63 BrowserPolicyConnector::SetPolicyProviderForTesting(&provider_); |
| 64 } | 64 } |
| 65 | 65 |
| 66 void PowerPolicyBrowserTest::SetUserPolicy( | 66 void PowerPolicyBrowserTest::SetUserPolicy( |
| 67 const std::string& user_policy_name, | 67 const std::string& user_policy_name, |
| 68 base::Value* user_policy_value) { | 68 base::Value* user_policy_value) { |
| 69 PolicyMap policy_map; | 69 PolicyMap policy_map; |
| 70 policy_map.Set(user_policy_name, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | 70 policy_map.Set(user_policy_name, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
| 71 user_policy_value); | 71 user_policy_value); |
| 72 | |
| 73 // The lock-on-idle-suspend policy must be set in order for the | |
| 74 // screen-lock-delay policies to be honored. | |
| 75 if (user_policy_name == key::kScreenLockDelayAC || | |
|
Daniel Erat
2013/05/22 17:12:34
This feels gross; let me know if you can think of
| |
| 76 user_policy_name == key::kScreenLockDelayBattery) { | |
| 77 policy_map.Set(key::kChromeOsLockOnIdleSuspend, POLICY_LEVEL_MANDATORY, | |
| 78 POLICY_SCOPE_USER, base::Value::CreateBooleanValue(true)); | |
| 79 } | |
| 80 | |
| 72 provider_.UpdateChromePolicy(policy_map); | 81 provider_.UpdateChromePolicy(policy_map); |
| 73 base::RunLoop().RunUntilIdle(); | 82 base::RunLoop().RunUntilIdle(); |
| 74 } | 83 } |
| 75 | 84 |
| 76 std::string PowerPolicyBrowserTest::GetDebugString( | 85 std::string PowerPolicyBrowserTest::GetDebugString( |
| 77 const pm::PowerManagementPolicy& policy) { | 86 const pm::PowerManagementPolicy& policy) { |
| 78 return chromeos::PowerPolicyController::GetPolicyDebugString(policy); | 87 return chromeos::PowerPolicyController::GetPolicyDebugString(policy); |
| 79 } | 88 } |
| 80 | 89 |
| 81 IN_PROC_BROWSER_TEST_F(PowerPolicyBrowserTest, SetPowerPolicy) { | 90 IN_PROC_BROWSER_TEST_F(PowerPolicyBrowserTest, SetPowerPolicy) { |
| 82 pm::PowerManagementPolicy original_power_management_policy = | 91 pm::PowerManagementPolicy original_power_management_policy = |
| 83 power_manager_client_->get_policy(); | 92 power_manager_client_->get_policy(); |
| 84 | 93 |
| 94 // Also save the default policy that's sent when the lock-on-idle-suspend | |
| 95 // policy is enabled, as it results in a different interpretation of the | |
| 96 // screen-lock-delay policies. | |
| 97 SetUserPolicy(key::kChromeOsLockOnIdleSuspend, | |
| 98 base::Value::CreateBooleanValue(true)); | |
| 99 pm::PowerManagementPolicy original_power_management_screen_lock_policy = | |
| 100 power_manager_client_->get_policy(); | |
| 101 | |
| 85 pm::PowerManagementPolicy power_management_policy = | 102 pm::PowerManagementPolicy power_management_policy = |
| 86 original_power_management_policy; | 103 original_power_management_policy; |
| 87 power_management_policy.set_idle_action( | 104 power_management_policy.set_idle_action( |
| 88 pm::PowerManagementPolicy::STOP_SESSION); | 105 pm::PowerManagementPolicy::STOP_SESSION); |
| 89 SetUserPolicy( | 106 SetUserPolicy( |
| 90 key::kIdleAction, | 107 key::kIdleAction, |
| 91 base::Value::CreateIntegerValue(pm::PowerManagementPolicy::STOP_SESSION)); | 108 base::Value::CreateIntegerValue(pm::PowerManagementPolicy::STOP_SESSION)); |
| 92 EXPECT_EQ(GetDebugString(power_management_policy), | 109 EXPECT_EQ(GetDebugString(power_management_policy), |
| 93 GetDebugString(power_manager_client_->get_policy())); | 110 GetDebugString(power_manager_client_->get_policy())); |
| 94 | 111 |
| (...skipping 24 matching lines...) Expand all Loading... | |
| 119 SetUserPolicy(key::kScreenOffDelayAC, base::Value::CreateIntegerValue(7000)); | 136 SetUserPolicy(key::kScreenOffDelayAC, base::Value::CreateIntegerValue(7000)); |
| 120 EXPECT_EQ(GetDebugString(power_management_policy), | 137 EXPECT_EQ(GetDebugString(power_management_policy), |
| 121 GetDebugString(power_manager_client_->get_policy())); | 138 GetDebugString(power_manager_client_->get_policy())); |
| 122 | 139 |
| 123 power_management_policy = original_power_management_policy; | 140 power_management_policy = original_power_management_policy; |
| 124 power_management_policy.mutable_ac_delays()->set_screen_dim_ms(5000); | 141 power_management_policy.mutable_ac_delays()->set_screen_dim_ms(5000); |
| 125 SetUserPolicy(key::kScreenDimDelayAC, base::Value::CreateIntegerValue(5000)); | 142 SetUserPolicy(key::kScreenDimDelayAC, base::Value::CreateIntegerValue(5000)); |
| 126 EXPECT_EQ(GetDebugString(power_management_policy), | 143 EXPECT_EQ(GetDebugString(power_management_policy), |
| 127 GetDebugString(power_manager_client_->get_policy())); | 144 GetDebugString(power_manager_client_->get_policy())); |
| 128 | 145 |
| 129 power_management_policy = original_power_management_policy; | 146 power_management_policy = original_power_management_screen_lock_policy; |
| 130 power_management_policy.mutable_ac_delays()->set_screen_lock_ms(6000); | 147 power_management_policy.mutable_ac_delays()->set_screen_lock_ms(6000); |
| 131 SetUserPolicy(key::kScreenLockDelayAC, base::Value::CreateIntegerValue(6000)); | 148 SetUserPolicy(key::kScreenLockDelayAC, base::Value::CreateIntegerValue(6000)); |
| 132 EXPECT_EQ(GetDebugString(power_management_policy), | 149 EXPECT_EQ(GetDebugString(power_management_policy), |
| 133 GetDebugString(power_manager_client_->get_policy())); | 150 GetDebugString(power_manager_client_->get_policy())); |
| 134 | 151 |
| 135 power_management_policy = original_power_management_policy; | 152 power_management_policy = original_power_management_policy; |
| 136 power_management_policy.mutable_battery_delays()->set_idle_ms(5000); | 153 power_management_policy.mutable_battery_delays()->set_idle_ms(5000); |
| 137 SetUserPolicy(key::kIdleDelayBattery, base::Value::CreateIntegerValue(5000)); | 154 SetUserPolicy(key::kIdleDelayBattery, base::Value::CreateIntegerValue(5000)); |
| 138 EXPECT_EQ(GetDebugString(power_management_policy), | 155 EXPECT_EQ(GetDebugString(power_management_policy), |
| 139 GetDebugString(power_manager_client_->get_policy())); | 156 GetDebugString(power_manager_client_->get_policy())); |
| (...skipping 12 matching lines...) Expand all Loading... | |
| 152 EXPECT_EQ(GetDebugString(power_management_policy), | 169 EXPECT_EQ(GetDebugString(power_management_policy), |
| 153 GetDebugString(power_manager_client_->get_policy())); | 170 GetDebugString(power_manager_client_->get_policy())); |
| 154 | 171 |
| 155 power_management_policy = original_power_management_policy; | 172 power_management_policy = original_power_management_policy; |
| 156 power_management_policy.mutable_battery_delays()->set_screen_dim_ms(1000); | 173 power_management_policy.mutable_battery_delays()->set_screen_dim_ms(1000); |
| 157 SetUserPolicy(key::kScreenDimDelayBattery, | 174 SetUserPolicy(key::kScreenDimDelayBattery, |
| 158 base::Value::CreateIntegerValue(1000)); | 175 base::Value::CreateIntegerValue(1000)); |
| 159 EXPECT_EQ(GetDebugString(power_management_policy), | 176 EXPECT_EQ(GetDebugString(power_management_policy), |
| 160 GetDebugString(power_manager_client_->get_policy())); | 177 GetDebugString(power_manager_client_->get_policy())); |
| 161 | 178 |
| 162 power_management_policy = original_power_management_policy; | 179 power_management_policy = original_power_management_screen_lock_policy; |
| 163 power_management_policy.mutable_battery_delays()->set_screen_lock_ms(2000); | 180 power_management_policy.mutable_battery_delays()->set_screen_lock_ms(2000); |
| 164 SetUserPolicy(key::kScreenLockDelayBattery, | 181 SetUserPolicy(key::kScreenLockDelayBattery, |
| 165 base::Value::CreateIntegerValue(2000)); | 182 base::Value::CreateIntegerValue(2000)); |
| 166 EXPECT_EQ(GetDebugString(power_management_policy), | 183 EXPECT_EQ(GetDebugString(power_management_policy), |
| 167 GetDebugString(power_manager_client_->get_policy())); | 184 GetDebugString(power_manager_client_->get_policy())); |
| 168 | 185 |
| 169 power_management_policy = original_power_management_policy; | 186 power_management_policy = original_power_management_policy; |
| 170 power_management_policy.set_use_audio_activity(false); | 187 power_management_policy.set_use_audio_activity(false); |
| 171 SetUserPolicy(key::kPowerManagementUsesAudioActivity, | 188 SetUserPolicy(key::kPowerManagementUsesAudioActivity, |
| 172 base::Value::CreateBooleanValue(false)); | 189 base::Value::CreateBooleanValue(false)); |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 220 SetUserPolicy(key::kAllowScreenWakeLocks, | 237 SetUserPolicy(key::kAllowScreenWakeLocks, |
| 221 base::Value::CreateBooleanValue(false)); | 238 base::Value::CreateBooleanValue(false)); |
| 222 policy = baseline_policy; | 239 policy = baseline_policy; |
| 223 policy.set_idle_action(power_manager_client_->get_policy().idle_action()); | 240 policy.set_idle_action(power_manager_client_->get_policy().idle_action()); |
| 224 policy.set_reason(power_manager_client_->get_policy().reason()); | 241 policy.set_reason(power_manager_client_->get_policy().reason()); |
| 225 EXPECT_EQ(GetDebugString(policy), | 242 EXPECT_EQ(GetDebugString(policy), |
| 226 GetDebugString(power_manager_client_->get_policy())); | 243 GetDebugString(power_manager_client_->get_policy())); |
| 227 } | 244 } |
| 228 | 245 |
| 229 } // namespace policy | 246 } // namespace policy |
| OLD | NEW |