def device_charged(): battery_level = self.GetBatteryInfo().get('level') if battery_level is None: logger.warning('Unable to find current battery level.') battery_level = 100 else: logger.info('current battery level: %s', battery_level) battery_level = int(battery_level) # Use > so that it will not reset if charge is going down. if battery_level > charge_status['last_charge_value']: charge_status['last_charge_value'] = battery_level charge_status['charge_failure_count'] = 0 else: charge_status['charge_failure_count'] += 1 if (not battery_level >= level and charge_status['charge_failure_count'] >= _MAX_CHARGE_ERROR): raise device_errors.DeviceChargingError( 'Device not charging properly. Current level:%s Previous level:%s' % (battery_level, charge_status['last_charge_value'])) return battery_level >= level
def testPicklable_DeviceChargingError(self): original = device_errors.DeviceChargingError( 'Fake presentation.device failed to charge') self.assertIsPicklable(original)