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

Side by Side Diff: build/android/pylib/local/device/local_device_environment.py

Issue 1101603002: [Android] Rework device filtering and add DeviceUtils.HealthyDevices. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: perezju comments Created 5 years, 8 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 unified diff | Download patch
« no previous file with comments | « build/android/pylib/device/device_utils_test.py ('k') | build/android/screenshot.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium 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 from pylib.base import environment 5 from pylib.base import environment
6 from pylib.device import adb_wrapper 6 from pylib.device import adb_wrapper
7 from pylib.device import device_errors 7 from pylib.device import device_errors
8 from pylib.device import device_filter
9 from pylib.device import device_utils 8 from pylib.device import device_utils
10 from pylib.utils import parallelizer 9 from pylib.utils import parallelizer
11 10
12 11
13 class LocalDeviceEnvironment(environment.Environment): 12 class LocalDeviceEnvironment(environment.Environment):
14 13
15 def __init__(self, args, _error_func): 14 def __init__(self, args, _error_func):
16 super(LocalDeviceEnvironment, self).__init__() 15 super(LocalDeviceEnvironment, self).__init__()
17 self._device = args.test_device 16 self._device_serial = args.test_device
18 self._devices = [] 17 self._devices = []
19 self._max_tries = 1 + args.num_retries 18 self._max_tries = 1 + args.num_retries
20 self._tool_name = args.tool 19 self._tool_name = args.tool
21 20
22 #override 21 #override
23 def SetUp(self): 22 def SetUp(self):
24 available_devices = adb_wrapper.AdbWrapper.Devices( 23 available_devices = device_utils.DeviceUtils.HealthyDevices()
25 filters=device_filter.DefaultFilters())
26 if not available_devices: 24 if not available_devices:
27 raise device_errors.NoDevicesError 25 raise device_errors.NoDevicesError
28 if self._device: 26 if self._device_serial:
29 if self._device not in available_devices: 27 self._devices = [d for d in available_devices
28 if d.adb.GetDeviceSerial == self._device_serial]
29 if not self._devices:
30 raise device_errors.DeviceUnreachableError( 30 raise device_errors.DeviceUnreachableError(
31 'Could not find device %r' % self._device) 31 'Could not find device %r' % self._device_serial)
32 self._devices = [device_utils.DeviceUtils(self._device)]
33 else: 32 else:
34 self._devices = [ 33 self._devices = available_devices
35 device_utils.DeviceUtils(s)
36 for s in available_devices]
37 34
38 @property 35 @property
39 def devices(self): 36 def devices(self):
40 return self._devices 37 return self._devices
41 38
42 @property 39 @property
43 def parallel_devices(self): 40 def parallel_devices(self):
44 return parallelizer.SyncParallelizer(self._devices) 41 return parallelizer.SyncParallelizer(self._devices)
45 42
46 @property 43 @property
47 def max_tries(self): 44 def max_tries(self):
48 return self._max_tries 45 return self._max_tries
49 46
50 @property 47 @property
51 def tool(self): 48 def tool(self):
52 return self._tool_name 49 return self._tool_name
53 50
54 #override 51 #override
55 def TearDown(self): 52 def TearDown(self):
56 pass 53 pass
57 54
OLDNEW
« no previous file with comments | « build/android/pylib/device/device_utils_test.py ('k') | build/android/screenshot.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698