# Copyright 2014 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. from pylib.base import environment from pylib.device import adb_wrapper from pylib.device import device_errors from pylib.device import device_utils from pylib.utils import parallelizer class LocalDeviceEnvironment(environment.Environment): def __init__(self, args, _error_func): super(LocalDeviceEnvironment, self).__init__() self._device_serial = args.test_device self._devices = [] self._max_tries = 1 + args.num_retries self._tool_name = args.tool #override def SetUp(self): available_devices = device_utils.DeviceUtils.HealthyDevices() if not available_devices: raise device_errors.NoDevicesError if self._device_serial: self._devices = [d for d in available_devices if d.adb.GetDeviceSerial() == self._device_serial] if not self._devices: raise device_errors.DeviceUnreachableError( 'Could not find device %r' % self._device_serial) else: self._devices = available_devices @property def devices(self): return self._devices @property def parallel_devices(self): return parallelizer.SyncParallelizer(self._devices) @property def max_tries(self): return self._max_tries @property def tool(self): return self._tool_name #override def TearDown(self): pass