Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2757)

Unified Diff: build/android/pylib/device/adb_wrapper.py

Issue 935333002: Update from https://crrev.com/316786 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « build/android/pylib/device/OWNERS ('k') | build/android/pylib/device/device_utils.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/android/pylib/device/adb_wrapper.py
diff --git a/build/android/pylib/device/adb_wrapper.py b/build/android/pylib/device/adb_wrapper.py
index 7d11671212d236fcb9a4d6a7dc738775ef93d29f..f29f5c7689f6505d730fa28cede6a2be6e1e11e7 100644
--- a/build/android/pylib/device/adb_wrapper.py
+++ b/build/android/pylib/device/adb_wrapper.py
@@ -253,6 +253,20 @@ class AdbWrapper(object):
command, output, status=status, device_serial=self._device_serial)
return output
+ def IterShell(self, command, timeout):
+ """Runs a shell command and returns an iterator over its output lines.
+
+ Args:
+ command: A string with the shell command to run.
+ timeout: Timeout in seconds.
+
+ Yields:
+ The output of the command line by line.
+ """
+ args = ['shell', command]
+ return cmd_helper.IterCmdOutputLines(
+ self._BuildAdbCmd(args, self._device_serial), timeout=timeout)
+
def Ls(self, path, timeout=_DEFAULT_TIMEOUT, retries=_DEFAULT_RETRIES):
"""List the contents of a directory on the device.
@@ -286,26 +300,42 @@ class AdbWrapper(object):
device_serial=self._device_serial)
def Logcat(self, clear=False, dump=False, filter_spec=None,
- logcat_format=None, timeout=None):
- """Get an iterator over the logcat output.
+ logcat_format=None, timeout=None, retries=_DEFAULT_RETRIES):
+ """Get an iterable over the logcat output.
Args:
- filter_spec: (optional) Spec to filter the logcat.
- timeout: (optional) Timeout per try in seconds.
+ clear: If true, clear the logcat.
+ dump: If true, dump the current logcat contents.
+ filter_spec: If set, spec to filter the logcat.
+ logcat_format: If set, the format in which the logcat should be output.
+ Options include "brief", "process", "tag", "thread", "raw", "time",
+ "threadtime", and "long"
+ timeout: (optional) If set, timeout per try in seconds. If clear or dump
+ is set, defaults to _DEFAULT_TIMEOUT.
+ retries: (optional) If clear or dump is set, the number of retries to
+ attempt. Otherwise, does nothing.
Yields:
logcat output line by line.
"""
cmd = ['logcat']
+ use_iter = True
if clear:
cmd.append('-c')
+ use_iter = False
if dump:
cmd.append('-d')
+ use_iter = False
if logcat_format:
cmd.extend(['-v', logcat_format])
if filter_spec is not None:
cmd.append(filter_spec)
- return self._IterRunDeviceAdbCmd(cmd, timeout)
+
+ if use_iter:
+ return self._IterRunDeviceAdbCmd(cmd, timeout)
+ else:
+ timeout = timeout if timeout is not None else _DEFAULT_TIMEOUT
+ return self._RunDeviceAdbCmd(cmd, timeout, retries)
def Forward(self, local, remote, timeout=_DEFAULT_TIMEOUT,
retries=_DEFAULT_RETRIES):
« no previous file with comments | « build/android/pylib/device/OWNERS ('k') | build/android/pylib/device/device_utils.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698