| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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/status/power_menu_button.h" | 5 #include "chrome/browser/chromeos/status/power_menu_button.h" |
| 6 | 6 |
| 7 #include "chrome/browser/browser.h" | 7 #include "chrome/browser/browser.h" |
| 8 #include "chrome/browser/browser_window.h" | 8 #include "chrome/browser/browser_window.h" |
| 9 #include "chrome/browser/chromeos/cros/cros_in_process_browser_test.h" | 9 #include "chrome/browser/chromeos/cros/cros_in_process_browser_test.h" |
| 10 #include "chrome/browser/chromeos/cros/mock_power_library.h" | 10 #include "chrome/browser/chromeos/cros/mock_power_library.h" |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 86 EXPECT_CALL(*mock_power_library_, battery_time_to_empty()) | 86 EXPECT_CALL(*mock_power_library_, battery_time_to_empty()) |
| 87 .WillOnce((Return(base::TimeDelta::FromMinutes(42)))) | 87 .WillOnce((Return(base::TimeDelta::FromMinutes(42)))) |
| 88 .RetiresOnSaturation(); | 88 .RetiresOnSaturation(); |
| 89 EXPECT_CALL(*mock_power_library_, battery_time_to_full()) | 89 EXPECT_CALL(*mock_power_library_, battery_time_to_full()) |
| 90 .WillOnce((Return(base::TimeDelta::FromMinutes(0)))) | 90 .WillOnce((Return(base::TimeDelta::FromMinutes(0)))) |
| 91 .RetiresOnSaturation(); | 91 .RetiresOnSaturation(); |
| 92 EXPECT_EQ(IDR_STATUSBAR_BATTERY_CHARGED, CallPowerChangedAndGetIconId()); | 92 EXPECT_EQ(IDR_STATUSBAR_BATTERY_CHARGED, CallPowerChangedAndGetIconId()); |
| 93 } | 93 } |
| 94 | 94 |
| 95 IN_PROC_BROWSER_TEST_F(PowerMenuButtonTest, BatteryChargingTest) { | 95 IN_PROC_BROWSER_TEST_F(PowerMenuButtonTest, BatteryChargingTest) { |
| 96 const int NUM_TIMES = 12; // 6 + 8*12 = 102 | 96 const int NUM_TIMES = 16; |
| 97 EXPECT_CALL(*mock_power_library_, battery_is_present()) | 97 EXPECT_CALL(*mock_power_library_, battery_is_present()) |
| 98 .Times(NUM_TIMES) | 98 .Times(NUM_TIMES) |
| 99 .WillRepeatedly((Return(true))) | 99 .WillRepeatedly((Return(true))) |
| 100 .RetiresOnSaturation(); | 100 .RetiresOnSaturation(); |
| 101 EXPECT_CALL(*mock_power_library_, battery_fully_charged()) | 101 EXPECT_CALL(*mock_power_library_, battery_fully_charged()) |
| 102 .Times(NUM_TIMES) | 102 .Times(NUM_TIMES) |
| 103 .WillRepeatedly((Return(false))) | 103 .WillRepeatedly((Return(false))) |
| 104 .RetiresOnSaturation(); | 104 .RetiresOnSaturation(); |
| 105 EXPECT_CALL(*mock_power_library_, line_power_on()) | 105 EXPECT_CALL(*mock_power_library_, line_power_on()) |
| 106 .Times(NUM_TIMES) | 106 .Times(NUM_TIMES) |
| 107 .WillRepeatedly((Return(true))) // plugged in | 107 .WillRepeatedly((Return(true))) // plugged in |
| 108 .RetiresOnSaturation(); | 108 .RetiresOnSaturation(); |
| 109 EXPECT_CALL(*mock_power_library_, battery_time_to_empty()) | 109 EXPECT_CALL(*mock_power_library_, battery_time_to_empty()) |
| 110 .Times(NUM_TIMES) | 110 .Times(NUM_TIMES) |
| 111 .WillRepeatedly((Return(base::TimeDelta::FromMinutes(42)))) | 111 .WillRepeatedly((Return(base::TimeDelta::FromMinutes(42)))) |
| 112 .RetiresOnSaturation(); | 112 .RetiresOnSaturation(); |
| 113 EXPECT_CALL(*mock_power_library_, battery_time_to_full()) | 113 EXPECT_CALL(*mock_power_library_, battery_time_to_full()) |
| 114 .Times(NUM_TIMES) | 114 .Times(NUM_TIMES) |
| 115 .WillRepeatedly((Return(base::TimeDelta::FromMinutes(24)))) | 115 .WillRepeatedly((Return(base::TimeDelta::FromMinutes(24)))) |
| 116 .RetiresOnSaturation(); | 116 .RetiresOnSaturation(); |
| 117 | 117 |
| 118 // Test the 12 battery charging states. | 118 // Test the 16 battery charging states. |
| 119 // NOTE: Use an array rather than just calculating a resource number to avoid | 119 // NOTE: Use an array rather than just calculating a resource number to avoid |
| 120 // creating implicit ordering dependencies on the resource values. | 120 // creating implicit ordering dependencies on the resource values. |
| 121 static const int kChargingImages[] = { | 121 static const int kChargingImages[] = { |
| 122 IDR_STATUSBAR_BATTERY_CHARGING_1, | 122 IDR_STATUSBAR_BATTERY_CHARGING_1, |
| 123 IDR_STATUSBAR_BATTERY_CHARGING_2, | 123 IDR_STATUSBAR_BATTERY_CHARGING_2, |
| 124 IDR_STATUSBAR_BATTERY_CHARGING_3, | 124 IDR_STATUSBAR_BATTERY_CHARGING_3, |
| 125 IDR_STATUSBAR_BATTERY_CHARGING_4, | 125 IDR_STATUSBAR_BATTERY_CHARGING_4, |
| 126 IDR_STATUSBAR_BATTERY_CHARGING_5, | 126 IDR_STATUSBAR_BATTERY_CHARGING_5, |
| 127 IDR_STATUSBAR_BATTERY_CHARGING_6, | 127 IDR_STATUSBAR_BATTERY_CHARGING_6, |
| 128 IDR_STATUSBAR_BATTERY_CHARGING_7, | 128 IDR_STATUSBAR_BATTERY_CHARGING_7, |
| 129 IDR_STATUSBAR_BATTERY_CHARGING_8, | 129 IDR_STATUSBAR_BATTERY_CHARGING_8, |
| 130 IDR_STATUSBAR_BATTERY_CHARGING_9, | 130 IDR_STATUSBAR_BATTERY_CHARGING_9, |
| 131 IDR_STATUSBAR_BATTERY_CHARGING_10, | 131 IDR_STATUSBAR_BATTERY_CHARGING_10, |
| 132 IDR_STATUSBAR_BATTERY_CHARGING_11, | 132 IDR_STATUSBAR_BATTERY_CHARGING_11, |
| 133 IDR_STATUSBAR_BATTERY_CHARGING_12, | 133 IDR_STATUSBAR_BATTERY_CHARGING_12, |
| 134 IDR_STATUSBAR_BATTERY_CHARGING_13, |
| 135 IDR_STATUSBAR_BATTERY_CHARGING_14, |
| 136 IDR_STATUSBAR_BATTERY_CHARGING_15, |
| 137 IDR_STATUSBAR_BATTERY_CHARGING_16, |
| 134 }; | 138 }; |
| 135 size_t id = 0; | 139 size_t id = 0; |
| 136 for (float percent = 6.0; percent < 100.0; percent += 8.0) { | 140 for (float percent = 6.0; percent < 100.0; percent += 6.0) { |
| 137 EXPECT_CALL(*mock_power_library_, battery_percentage()) | 141 EXPECT_CALL(*mock_power_library_, battery_percentage()) |
| 138 .WillOnce((Return(percent))) | 142 .WillOnce((Return(percent))) |
| 139 .RetiresOnSaturation(); | 143 .RetiresOnSaturation(); |
| 140 ASSERT_LT(id, arraysize(kChargingImages)); | 144 ASSERT_LT(id, arraysize(kChargingImages)); |
| 141 EXPECT_EQ(kChargingImages[id], CallPowerChangedAndGetIconId()); | 145 EXPECT_EQ(kChargingImages[id], CallPowerChangedAndGetIconId()); |
| 142 id++; | 146 id++; |
| 143 } | 147 } |
| 144 } | 148 } |
| 145 | 149 |
| 146 IN_PROC_BROWSER_TEST_F(PowerMenuButtonTest, BatteryDischargingTest) { | 150 IN_PROC_BROWSER_TEST_F(PowerMenuButtonTest, BatteryDischargingTest) { |
| 147 const int NUM_TIMES = 12; // 6 + 8*12 = 102 | 151 const int NUM_TIMES = 16; |
| 148 EXPECT_CALL(*mock_power_library_, battery_is_present()) | 152 EXPECT_CALL(*mock_power_library_, battery_is_present()) |
| 149 .Times(NUM_TIMES) | 153 .Times(NUM_TIMES) |
| 150 .WillRepeatedly((Return(true))) | 154 .WillRepeatedly((Return(true))) |
| 151 .RetiresOnSaturation(); | 155 .RetiresOnSaturation(); |
| 152 EXPECT_CALL(*mock_power_library_, battery_fully_charged()) | 156 EXPECT_CALL(*mock_power_library_, battery_fully_charged()) |
| 153 .Times(NUM_TIMES) | 157 .Times(NUM_TIMES) |
| 154 .WillRepeatedly((Return(false))) | 158 .WillRepeatedly((Return(false))) |
| 155 .RetiresOnSaturation(); | 159 .RetiresOnSaturation(); |
| 156 EXPECT_CALL(*mock_power_library_, line_power_on()) | 160 EXPECT_CALL(*mock_power_library_, line_power_on()) |
| 157 .Times(NUM_TIMES) | 161 .Times(NUM_TIMES) |
| 158 .WillRepeatedly((Return(false))) | 162 .WillRepeatedly((Return(false))) |
| 159 .RetiresOnSaturation(); | 163 .RetiresOnSaturation(); |
| 160 EXPECT_CALL(*mock_power_library_, battery_time_to_empty()) | 164 EXPECT_CALL(*mock_power_library_, battery_time_to_empty()) |
| 161 .Times(NUM_TIMES) | 165 .Times(NUM_TIMES) |
| 162 .WillRepeatedly((Return(base::TimeDelta::FromMinutes(42)))) | 166 .WillRepeatedly((Return(base::TimeDelta::FromMinutes(42)))) |
| 163 .RetiresOnSaturation(); | 167 .RetiresOnSaturation(); |
| 164 EXPECT_CALL(*mock_power_library_, battery_time_to_full()) | 168 EXPECT_CALL(*mock_power_library_, battery_time_to_full()) |
| 165 .Times(NUM_TIMES) | 169 .Times(NUM_TIMES) |
| 166 .WillRepeatedly((Return(base::TimeDelta::FromMinutes(24)))) | 170 .WillRepeatedly((Return(base::TimeDelta::FromMinutes(24)))) |
| 167 .RetiresOnSaturation(); | 171 .RetiresOnSaturation(); |
| 168 | 172 |
| 169 // Test the 12 battery discharing states. | 173 // Test the 16 battery discharing states. |
| 170 // NOTE: Use an array rather than just calculating a resource number to avoid | 174 // NOTE: Use an array rather than just calculating a resource number to avoid |
| 171 // creating implicit ordering dependencies on the resource values. | 175 // creating implicit ordering dependencies on the resource values. |
| 172 static const int kDischargingImages[] = { | 176 static const int kDischargingImages[] = { |
| 173 IDR_STATUSBAR_BATTERY_DISCHARGING_1, | 177 IDR_STATUSBAR_BATTERY_DISCHARGING_1, |
| 174 IDR_STATUSBAR_BATTERY_DISCHARGING_2, | 178 IDR_STATUSBAR_BATTERY_DISCHARGING_2, |
| 175 IDR_STATUSBAR_BATTERY_DISCHARGING_3, | 179 IDR_STATUSBAR_BATTERY_DISCHARGING_3, |
| 176 IDR_STATUSBAR_BATTERY_DISCHARGING_4, | 180 IDR_STATUSBAR_BATTERY_DISCHARGING_4, |
| 177 IDR_STATUSBAR_BATTERY_DISCHARGING_5, | 181 IDR_STATUSBAR_BATTERY_DISCHARGING_5, |
| 178 IDR_STATUSBAR_BATTERY_DISCHARGING_6, | 182 IDR_STATUSBAR_BATTERY_DISCHARGING_6, |
| 179 IDR_STATUSBAR_BATTERY_DISCHARGING_7, | 183 IDR_STATUSBAR_BATTERY_DISCHARGING_7, |
| 180 IDR_STATUSBAR_BATTERY_DISCHARGING_8, | 184 IDR_STATUSBAR_BATTERY_DISCHARGING_8, |
| 181 IDR_STATUSBAR_BATTERY_DISCHARGING_9, | 185 IDR_STATUSBAR_BATTERY_DISCHARGING_9, |
| 182 IDR_STATUSBAR_BATTERY_DISCHARGING_10, | 186 IDR_STATUSBAR_BATTERY_DISCHARGING_10, |
| 183 IDR_STATUSBAR_BATTERY_DISCHARGING_11, | 187 IDR_STATUSBAR_BATTERY_DISCHARGING_11, |
| 184 IDR_STATUSBAR_BATTERY_DISCHARGING_12, | 188 IDR_STATUSBAR_BATTERY_DISCHARGING_12, |
| 189 IDR_STATUSBAR_BATTERY_DISCHARGING_13, |
| 190 IDR_STATUSBAR_BATTERY_DISCHARGING_14, |
| 191 IDR_STATUSBAR_BATTERY_DISCHARGING_15, |
| 192 IDR_STATUSBAR_BATTERY_DISCHARGING_16, |
| 185 }; | 193 }; |
| 186 size_t id = 0; | 194 size_t id = 0; |
| 187 for (float percent = 6.0; percent < 100.0; percent += 8.0) { | 195 for (float percent = 6.0; percent < 100.0; percent += 6.0) { |
| 188 EXPECT_CALL(*mock_power_library_, battery_percentage()) | 196 EXPECT_CALL(*mock_power_library_, battery_percentage()) |
| 189 .WillOnce((Return(percent))) | 197 .WillOnce((Return(percent))) |
| 190 .RetiresOnSaturation(); | 198 .RetiresOnSaturation(); |
| 191 ASSERT_LT(id, arraysize(kDischargingImages)); | 199 ASSERT_LT(id, arraysize(kDischargingImages)); |
| 192 EXPECT_EQ(kDischargingImages[id], CallPowerChangedAndGetIconId()); | 200 EXPECT_EQ(kDischargingImages[id], CallPowerChangedAndGetIconId()); |
| 193 id++; | 201 id++; |
| 194 } | 202 } |
| 195 } | 203 } |
| 196 | 204 |
| 197 } // namespace chromeos | 205 } // namespace chromeos |
| OLD | NEW |