Chromium Code Reviews| Index: chrome/browser/chromeos/power/power_prefs_unittest.cc |
| diff --git a/chrome/browser/chromeos/power/power_prefs_unittest.cc b/chrome/browser/chromeos/power/power_prefs_unittest.cc |
| index a1704d4acd13c7a4e04cf39cb3bd357e2d36c464..6a1881aed16868ad7fe34cfb36de58a06ba6dd66 100644 |
| --- a/chrome/browser/chromeos/power/power_prefs_unittest.cc |
| +++ b/chrome/browser/chromeos/power/power_prefs_unittest.cc |
| @@ -46,7 +46,8 @@ class PowerPrefsTest : public testing::Test { |
| const Profile* GetProfile() const; |
| - std::string GetExpectedPowerPolicyForProfile(Profile* profile) const; |
| + std::string GetExpectedPowerPolicyForProfile(Profile* profile, |
| + bool screen_is_locked) const; |
| std::string GetCurrentPowerPolicy() const; |
| bool GetExpectedAllowScreenWakeLocksForProfile(Profile* profile) const; |
| bool GetCurrentAllowScreenWakeLocks() const; |
| @@ -92,13 +93,16 @@ const Profile* PowerPrefsTest::GetProfile() const { |
| } |
| std::string PowerPrefsTest::GetExpectedPowerPolicyForProfile( |
| - Profile* profile) const { |
| + Profile* profile, |
| + bool screen_is_locked) const { |
| const PrefService* prefs = profile->GetPrefs(); |
| power_manager::PowerManagementPolicy expected_policy; |
| expected_policy.mutable_ac_delays()->set_screen_dim_ms( |
| - prefs->GetInteger(prefs::kPowerAcScreenDimDelayMs)); |
| + prefs->GetInteger(screen_is_locked ? prefs::kPowerLockScreenDimDelayMs : |
| + prefs::kPowerAcScreenDimDelayMs)); |
| expected_policy.mutable_ac_delays()->set_screen_off_ms( |
| - prefs->GetInteger(prefs::kPowerAcScreenOffDelayMs)); |
| + prefs->GetInteger(screen_is_locked ? prefs::kPowerLockScreenOffDelayMs : |
| + prefs::kPowerAcScreenOffDelayMs)); |
| expected_policy.mutable_ac_delays()->set_screen_lock_ms( |
| prefs->GetInteger(prefs::kPowerAcScreenLockDelayMs)); |
| expected_policy.mutable_ac_delays()->set_idle_warning_ms( |
| @@ -106,9 +110,11 @@ std::string PowerPrefsTest::GetExpectedPowerPolicyForProfile( |
| expected_policy.mutable_ac_delays()->set_idle_ms( |
| prefs->GetInteger(prefs::kPowerAcIdleDelayMs)); |
| expected_policy.mutable_battery_delays()->set_screen_dim_ms( |
| - prefs->GetInteger(prefs::kPowerBatteryScreenDimDelayMs)); |
| + prefs->GetInteger(screen_is_locked ? prefs::kPowerLockScreenDimDelayMs : |
| + prefs::kPowerBatteryScreenDimDelayMs)); |
| expected_policy.mutable_battery_delays()->set_screen_off_ms( |
| - prefs->GetInteger(prefs::kPowerBatteryScreenOffDelayMs)); |
| + prefs->GetInteger(screen_is_locked ? prefs::kPowerLockScreenOffDelayMs : |
| + prefs::kPowerBatteryScreenOffDelayMs)); |
| expected_policy.mutable_battery_delays()->set_screen_lock_ms( |
| prefs->GetInteger(prefs::kPowerBatteryScreenLockDelayMs)); |
| expected_policy.mutable_battery_delays()->set_idle_warning_ms( |
| @@ -170,7 +176,7 @@ TEST_F(PowerPrefsTest, LoginScreen) { |
| content::NotificationService::NoDetails()); |
| EXPECT_EQ(login_profile, GetProfile()); |
| - EXPECT_EQ(GetExpectedPowerPolicyForProfile(login_profile), |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(login_profile, false), |
|
Daniel Erat
2014/12/11 00:26:33
i suspect that you'll ask me to comment all of the
bartfab (slow)
2014/12/12 12:22:37
Well, there are many simple ways around it:
1) Us
|
| GetCurrentPowerPolicy()); |
| EXPECT_EQ(GetExpectedAllowScreenWakeLocksForProfile(login_profile), |
| GetCurrentAllowScreenWakeLocks()); |
| @@ -185,11 +191,27 @@ TEST_F(PowerPrefsTest, LoginScreen) { |
| // Verify that the login profile's power prefs are still being used. |
| EXPECT_EQ(login_profile, GetProfile()); |
| - EXPECT_EQ(GetExpectedPowerPolicyForProfile(login_profile), |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(login_profile, false), |
| GetCurrentPowerPolicy()); |
| EXPECT_EQ(GetExpectedAllowScreenWakeLocksForProfile(login_profile), |
| GetCurrentAllowScreenWakeLocks()); |
| + // Lock the screen and check that the expected delays are used. |
| + bool screen_is_locked = true; |
| + power_prefs_->Observe(chrome::NOTIFICATION_SCREEN_LOCK_STATE_CHANGED, |
| + content::Source<Profile>(login_profile), |
| + content::Details<bool>(&screen_is_locked)); |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(login_profile, true), |
| + GetCurrentPowerPolicy()); |
| + |
| + // Unlock the screen. |
| + screen_is_locked = false; |
| + power_prefs_->Observe(chrome::NOTIFICATION_SCREEN_LOCK_STATE_CHANGED, |
| + content::Source<Profile>(login_profile), |
| + content::Details<bool>(&screen_is_locked)); |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(login_profile, false), |
| + GetCurrentPowerPolicy()); |
| + |
| // Inform power_prefs_ that the login profile has been destroyed. |
| power_prefs_->Observe(chrome::NOTIFICATION_PROFILE_DESTROYED, |
| content::Source<Profile>(login_profile), |
| @@ -197,7 +219,7 @@ TEST_F(PowerPrefsTest, LoginScreen) { |
| // The login profile's prefs should still be used. |
| EXPECT_FALSE(GetProfile()); |
| - EXPECT_EQ(GetExpectedPowerPolicyForProfile(login_profile), |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(login_profile, false), |
| GetCurrentPowerPolicy()); |
| } |
| @@ -220,7 +242,7 @@ TEST_F(PowerPrefsTest, UserSession) { |
| content::NotificationService::NoDetails()); |
| EXPECT_EQ(user_profile, GetProfile()); |
| - EXPECT_EQ(GetExpectedPowerPolicyForProfile(user_profile), |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(user_profile, false), |
| GetCurrentPowerPolicy()); |
| EXPECT_EQ(GetExpectedAllowScreenWakeLocksForProfile(user_profile), |
| GetCurrentAllowScreenWakeLocks()); |
| @@ -238,7 +260,7 @@ TEST_F(PowerPrefsTest, UserSession) { |
| // Verify that the user profile's power prefs are still being used. |
| EXPECT_EQ(user_profile, GetProfile()); |
| - EXPECT_EQ(GetExpectedPowerPolicyForProfile(user_profile), |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(user_profile, false), |
| GetCurrentPowerPolicy()); |
| EXPECT_EQ(GetExpectedAllowScreenWakeLocksForProfile(user_profile), |
| GetCurrentAllowScreenWakeLocks()); |
| @@ -250,7 +272,7 @@ TEST_F(PowerPrefsTest, UserSession) { |
| // Verify that power policy didn't revert to login screen settings. |
| EXPECT_EQ(user_profile, GetProfile()); |
| - EXPECT_EQ(GetExpectedPowerPolicyForProfile(user_profile), |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(user_profile, false), |
| GetCurrentPowerPolicy()); |
| EXPECT_EQ(GetExpectedAllowScreenWakeLocksForProfile(user_profile), |
| GetCurrentAllowScreenWakeLocks()); |
| @@ -263,7 +285,7 @@ TEST_F(PowerPrefsTest, UserSession) { |
| // The user profile's prefs should still be used. |
| EXPECT_FALSE(GetProfile()); |
| - EXPECT_EQ(GetExpectedPowerPolicyForProfile(user_profile), |
| + EXPECT_EQ(GetExpectedPowerPolicyForProfile(user_profile, false), |
| GetCurrentPowerPolicy()); |
| } |