def testDoubleStart(self): browser = pm_mock.MockBrowser(_PACKAGE) battery = pm_mock.MockBattery(_TYPICAL_POWER_DATA_MULTISAMPLE, voltage=5.0) backend = pm_mock.MockPlatformBackend() pm = android_dumpsys_power_monitor.DumpsysPowerMonitor( battery, backend) pm.StartMonitoringPower(browser) with self.assertRaises(AssertionError): pm.StartMonitoringPower(browser)
def testBatteryChargingState(self): browser = pm_mock.MockBrowser(_PACKAGE) battery = pm_mock.MockBattery(_TYPICAL_POWER_DATA_MULTISAMPLE, voltage=5.0) backend = pm_mock.MockPlatformBackend() pm = android_dumpsys_power_monitor.DumpsysPowerMonitor( battery, backend) self.assertEqual(battery.GetCharging(), True) pm.StartMonitoringPower(browser) self.assertEqual(battery.GetCharging(), False) pm.StopMonitoringPower() self.assertEqual(battery.GetCharging(), True)
def testMonitorCycle(self): browser = pm_mock.MockBrowser(_PACKAGE) battery = pm_mock.MockBattery(_TYPICAL_POWER_DATA_MULTISAMPLE, voltage=5.0) backend = pm_mock.MockPlatformBackend() pm = android_dumpsys_power_monitor.DumpsysPowerMonitor( battery, backend) pm.StartMonitoringPower(browser) result = pm.StopMonitoringPower() self.assertEqual(result['identifier'], 'dumpsys') self.assertEqual(result['power_samples_mw'], []) self.assertAlmostEqual(result['application_energy_consumption_mwh'], 250.0) self.assertAlmostEqual(result['energy_consumption_mwh'], 10000.0)