Index: tools/telemetry/telemetry/unittest/system_stub.py |
diff --git a/tools/telemetry/telemetry/unittest/system_stub.py b/tools/telemetry/telemetry/unittest/system_stub.py |
index 9c459e53b603a8e2c811275571e5e523de496ea5..ec61eb9d78021f3873f4e50106e1b55d078a4a45 100644 |
--- a/tools/telemetry/telemetry/unittest/system_stub.py |
+++ b/tools/telemetry/telemetry/unittest/system_stub.py |
@@ -24,6 +24,7 @@ class Override(object): |
'subprocess': SubprocessModuleStub, |
'sys': SysModuleStub, |
'thermal_throttle': ThermalThrottleModuleStub, |
+ 'logging': LoggingStub |
} |
self.adb_commands = None |
self.os = None |
@@ -52,27 +53,40 @@ class Override(object): |
class AndroidCommands(object): |
+ def __init__(self): |
+ self.can_access_protected_file_contents = False |
+ |
def CanAccessProtectedFileContents(self): |
- return False |
+ return self.can_access_protected_file_contents |
class AdbDevice(object): |
- def __init__(self, shell_command_handlers): |
- self._shell_command_handlers = shell_command_handlers |
+ def __init__(self): |
+ self.shell_command_handlers = {} |
+ self.mock_content = [] |
+ self.system_properties = {} |
+ if self.system_properties.get('ro.product.cpu.abi') == None: |
+ self.system_properties['ro.product.cpu.abi'] = 'armeabi-v7a' |
+ self.old_interface = AndroidCommands() |
def RunShellCommand(self, args): |
if isinstance(args, basestring): |
args = shlex.split(args) |
- handler = self._shell_command_handlers[args[0]] |
+ handler = self.shell_command_handlers[args[0]] |
return handler(args) |
def FileExists(self, _): |
return False |
- @property |
- def old_interface(self): |
- return AndroidCommands() |
+ def ReadFile(self, device_path, as_root=False): # pylint: disable=W0613 |
+ return self.mock_content |
+ |
+ def GetProp(self, property_name): |
+ return self.system_properties[property_name] |
+ |
+ def SetProp(self, property_name, property_value): |
+ self.system_properties[property_name] = property_value |
class AdbCommandsModuleStub(object): |
@@ -83,7 +97,7 @@ class AdbCommandsModuleStub(object): |
self._module = module |
self._device = device |
self.is_root_enabled = True |
- self._adb_device = AdbDevice(module.shell_command_handlers) |
+ self._adb_device = module.adb_device |
def IsRootEnabled(self): |
return self.is_root_enabled |
@@ -101,8 +115,8 @@ class AdbCommandsModuleStub(object): |
return self._adb_device |
def __init__(self): |
- self.shell_command_handlers = {} |
self.attached_devices = [] |
+ self.adb_device = AdbDevice() |
def AdbCommandsStubConstructor(device=None): |
return AdbCommandsModuleStub.AdbCommandsStub(self, device) |
@@ -153,6 +167,17 @@ class CloudStorageModuleStub(object): |
return self.local_hash_files[hash_path] |
+class LoggingStub(object): |
+ def __init__(self): |
+ self.warnings = [] |
+ |
+ def info(self, msg, *args): |
+ pass |
+ |
+ def warn(self, msg, *args): |
+ self.warnings.append(msg % args) |
+ |
+ |
class OpenFunctionStub(object): |
class FileStub(object): |
def __init__(self, data): |