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 |