OLD | NEW |
1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 1 # Copyright (c) 2010 The Chromium OS 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 import logging, time | 5 import logging, time |
6 from autotest_lib.client.bin import test | 6 from autotest_lib.client.bin import test |
7 from autotest_lib.client.common_lib import site_power_status | 7 from autotest_lib.client.cros import power_status |
8 | 8 |
9 | 9 |
10 class power_Draw(test.test): | 10 class power_Draw(test.test): |
11 version = 1 | 11 version = 1 |
12 | 12 |
13 | 13 |
14 def run_once(self, seconds=200): | 14 def run_once(self, seconds=200): |
15 status = site_power_status.get_status() | 15 status = power_status.get_status() |
16 if status.linepower[0].online: | 16 if status.linepower[0].online: |
17 logging.warn('AC power is online -- ' | 17 logging.warn('AC power is online -- ' |
18 'unable to monitor energy consumption') | 18 'unable to monitor energy consumption') |
19 return | 19 return |
20 | 20 |
21 start_energy = status.battery[0].energy | 21 start_energy = status.battery[0].energy |
22 | 22 |
23 # Let the test run | 23 # Let the test run |
24 time.sleep(seconds) | 24 time.sleep(seconds) |
25 | 25 |
26 status.refresh() | 26 status.refresh() |
27 end_energy = status.battery[0].energy | 27 end_energy = status.battery[0].energy |
28 | 28 |
29 consumed_energy = start_energy - end_energy | 29 consumed_energy = start_energy - end_energy |
30 energy_rate = consumed_energy * 60 * 60 / seconds | 30 energy_rate = consumed_energy * 60 * 60 / seconds |
31 | 31 |
32 keyvals = {} | 32 keyvals = {} |
33 keyvals['wh_energy_full'] = status.battery[0].energy_full | 33 keyvals['wh_energy_full'] = status.battery[0].energy_full |
34 keyvals['wh_start_energy'] = start_energy | 34 keyvals['wh_start_energy'] = start_energy |
35 keyvals['wh_end_energy'] = end_energy | 35 keyvals['wh_end_energy'] = end_energy |
36 keyvals['wh_consumed_energy'] = consumed_energy | 36 keyvals['wh_consumed_energy'] = consumed_energy |
37 keyvals['w_average_energy_rate'] = energy_rate | 37 keyvals['w_average_energy_rate'] = energy_rate |
38 keyvals['w_end_energy_rate'] = status.battery[0].energy_rate | 38 keyvals['w_end_energy_rate'] = status.battery[0].energy_rate |
39 self.write_perf_keyval(keyvals) | 39 self.write_perf_keyval(keyvals) |
OLD | NEW |