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

Unified Diff: tools/telemetry/telemetry/core/platform/android_device_unittest.py

Issue 1212333002: Revert of [Telemetry] Remove adb_commands usage from android_device. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 6 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 | « tools/telemetry/telemetry/core/platform/android_device.py ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/telemetry/telemetry/core/platform/android_device_unittest.py
diff --git a/tools/telemetry/telemetry/core/platform/android_device_unittest.py b/tools/telemetry/telemetry/core/platform/android_device_unittest.py
index d83ee3d8080374838f13395839a5554ba843c16c..b8a61dd7195aa7b0060420dafdd8f4c854ec42c8 100644
--- a/tools/telemetry/telemetry/core/platform/android_device_unittest.py
+++ b/tools/telemetry/telemetry/core/platform/android_device_unittest.py
@@ -5,121 +5,135 @@
import unittest
from telemetry.core import browser_options
-from telemetry.core import util
from telemetry.core.platform import android_device
+from telemetry.core.platform import android_platform_backend
from telemetry.unittest_util import system_stub
-util.AddDirToPythonPath(util.GetChromiumSrcDir(), 'build', 'android')
-from pylib.device import device_utils # pylint: disable=import-error
-util.AddDirToPythonPath(util.GetTelemetryDir(), 'third_party', 'mock')
-import mock # pylint: disable=import-error
+class AndroidDeviceTest(unittest.TestCase):
+ def setUp(self):
+ self._android_device_stub = system_stub.Override(
+ android_device, ['adb_commands'])
-
-class _BaseAndroidDeviceTest(unittest.TestCase):
- def setUp(self):
- self._healthy_device_patcher = mock.patch(
- 'pylib.device.device_utils.DeviceUtils.HealthyDevices')
- self._healthy_device_mock = self._healthy_device_patcher.start()
- self._android_device_stub = system_stub.Override(
- android_device, ['subprocess', 'logging'])
+ def testGetAllAttachedAndroidDevices(self):
+ self._android_device_stub.adb_commands.attached_devices = [
+ '01', '02']
+ self.assertEquals(
+ set(['01', '02']),
+ set(device.device_id for device in
+ android_device.AndroidDevice.GetAllConnectedDevices()
+ ))
def tearDown(self):
- self._healthy_device_patcher.stop()
self._android_device_stub.Restore()
-class AndroidDeviceTest(_BaseAndroidDeviceTest):
- def testGetAllAttachedAndroidDevices(self):
- self._healthy_device_mock.return_value = [
- device_utils.DeviceUtils('01'), device_utils.DeviceUtils('02')]
- self.assertEquals(
- set(['01', '02']),
- set(device.device_id for device in
- android_device.AndroidDevice.GetAllConnectedDevices()))
+class GetDeviceTest(unittest.TestCase):
+ def setUp(self):
+ self._android_device_stub = system_stub.Override(
+ android_device, ['adb_commands', 'os', 'subprocess', 'logging'])
+ self._apb_stub = system_stub.Override(
+ android_platform_backend, ['adb_commands'])
+
+ def tearDown(self):
+ self._android_device_stub.Restore()
+ self._apb_stub.Restore()
def testNoAdbReturnsNone(self):
finder_options = browser_options.BrowserFinderOptions()
- with (
- mock.patch('os.path.isabs', return_value=True)), (
- mock.patch('os.path.exists', return_value=False)):
- self.assertEquals([], self._android_device_stub.logging.warnings)
- self.assertIsNone(android_device.GetDevice(finder_options))
+
+ def NoAdb(*_1, **_2):
+ raise OSError('not found')
+ self._android_device_stub.subprocess.Popen = NoAdb
+
+ self.assertEquals([], self._android_device_stub.logging.warnings)
+ self.assertIsNone(android_device.GetDevice(finder_options))
def testAdbNoDevicesReturnsNone(self):
finder_options = browser_options.BrowserFinderOptions()
- with mock.patch('os.path.isabs', return_value=False):
- self._healthy_device_mock.return_value = []
- self.assertEquals([], self._android_device_stub.logging.warnings)
- self.assertIsNone(android_device.GetDevice(finder_options))
+ self.assertEquals([], self._android_device_stub.logging.warnings)
+ self.assertIsNone(android_device.GetDevice(finder_options))
+
+ def testAdbPermissionsErrorReturnsNone(self):
+ finder_options = browser_options.BrowserFinderOptions()
+ self._android_device_stub.subprocess.Popen.communicate_result = (
+ 'List of devices attached\n????????????\tno permissions\n',
+ '* daemon not running. starting it now on port 5037 *\n'
+ '* daemon started successfully *\n')
+ device = android_device.GetDevice(finder_options)
+ self.assertEquals([
+ 'adb devices gave a permissions error. Consider running adb as root:',
+ ' adb kill-server',
+ ' sudo `which adb` devices\n\n'],
+ self._android_device_stub.logging.warnings)
+ self.assertIsNone(device)
def testAdbTwoDevicesReturnsNone(self):
finder_options = browser_options.BrowserFinderOptions()
- with mock.patch('os.path.isabs', return_value=False):
- self._healthy_device_mock.return_value = [
- device_utils.DeviceUtils('015d14fec128220c'),
- device_utils.DeviceUtils('015d14fec128220d')]
- device = android_device.GetDevice(finder_options)
- self.assertEquals([
- 'Multiple devices attached. Please specify one of the following:\n'
- ' --device=015d14fec128220c\n'
- ' --device=015d14fec128220d'],
- self._android_device_stub.logging.warnings)
- self.assertIsNone(device)
+ self._android_device_stub.adb_commands.attached_devices = [
+ '015d14fec128220c', '015d14fec128220d']
+ device = android_device.GetDevice(finder_options)
+ self.assertEquals([
+ 'Multiple devices attached. Please specify one of the following:\n'
+ ' --device=015d14fec128220c\n'
+ ' --device=015d14fec128220d'],
+ self._android_device_stub.logging.warnings)
+ self.assertIsNone(device)
def testAdbPickOneDeviceReturnsDeviceInstance(self):
finder_options = browser_options.BrowserFinderOptions()
finder_options.device = '555d14fecddddddd' # pick one
- with mock.patch('os.path.isabs', return_value=False):
- self._healthy_device_mock.return_value = [
- device_utils.DeviceUtils('015d14fec128220c'),
- device_utils.DeviceUtils('555d14fecddddddd')]
- device = android_device.GetDevice(finder_options)
- self.assertEquals([], self._android_device_stub.logging.warnings)
- self.assertEquals('555d14fecddddddd', device.device_id)
+ self._android_device_stub.adb_commands.attached_devices = [
+ '015d14fec128220c', '555d14fecddddddd']
+ device = android_device.GetDevice(finder_options)
+ self.assertEquals([], self._android_device_stub.logging.warnings)
+ self.assertEquals('555d14fecddddddd', device.device_id)
def testAdbOneDeviceReturnsDeviceInstance(self):
finder_options = browser_options.BrowserFinderOptions()
- with mock.patch('os.path.isabs', return_value=False):
- self._healthy_device_mock.return_value = [
- device_utils.DeviceUtils('015d14fec128220c')]
- device = android_device.GetDevice(finder_options)
- self.assertEquals([], self._android_device_stub.logging.warnings)
- self.assertEquals('015d14fec128220c', device.device_id)
+ self._android_device_stub.adb_commands.attached_devices = (
+ ['015d14fec128220c'])
+ device = android_device.GetDevice(finder_options)
+ self.assertEquals([], self._android_device_stub.logging.warnings)
+ self.assertEquals('015d14fec128220c', device.device_id)
-class FindAllAvailableDevicesTest(_BaseAndroidDeviceTest):
+class FindAllAvailableDevicesTest(unittest.TestCase):
+ def setUp(self):
+ self._android_device_stub = system_stub.Override(
+ android_device, ['adb_commands', 'os', 'subprocess', 'logging'])
+ self._apb_stub = system_stub.Override(
+ android_platform_backend, ['adb_commands'])
+
+ def tearDown(self):
+ self._android_device_stub.Restore()
+ self._apb_stub.Restore()
+
def testAdbNoDeviceReturnsEmptyList(self):
finder_options = browser_options.BrowserFinderOptions()
- with mock.patch('os.path.isabs', return_value=False):
- self._healthy_device_mock.return_value = []
- devices = android_device.FindAllAvailableDevices(finder_options)
- self.assertEquals([], self._android_device_stub.logging.warnings)
- self.assertIsNotNone(devices)
- self.assertEquals(len(devices), 0)
+ devices = android_device.FindAllAvailableDevices(finder_options)
+ self.assertEquals([], self._android_device_stub.logging.warnings)
+ self.assertIsNotNone(devices)
+ self.assertEquals(len(devices), 0)
def testAdbOneDeviceReturnsListWithOneDeviceInstance(self):
finder_options = browser_options.BrowserFinderOptions()
- with mock.patch('os.path.isabs', return_value=False):
- self._healthy_device_mock.return_value = [
- device_utils.DeviceUtils('015d14fec128220c')]
- devices = android_device.FindAllAvailableDevices(finder_options)
- self.assertEquals([], self._android_device_stub.logging.warnings)
- self.assertIsNotNone(devices)
- self.assertEquals(len(devices), 1)
- self.assertEquals('015d14fec128220c', devices[0].device_id)
+ self._android_device_stub.adb_commands.attached_devices = (
+ ['015d14fec128220c'])
+ devices = android_device.FindAllAvailableDevices(finder_options)
+ self.assertEquals([], self._android_device_stub.logging.warnings)
+ self.assertIsNotNone(devices)
+ self.assertEquals(len(devices), 1)
+ self.assertEquals('015d14fec128220c', devices[0].device_id)
def testAdbMultipleDevicesReturnsListWithAllDeviceInstances(self):
finder_options = browser_options.BrowserFinderOptions()
- with mock.patch('os.path.isabs', return_value=False):
- self._healthy_device_mock.return_value = [
- device_utils.DeviceUtils('015d14fec128220c'),
- device_utils.DeviceUtils('015d14fec128220d'),
- device_utils.DeviceUtils('015d14fec128220e')]
- devices = android_device.FindAllAvailableDevices(finder_options)
- self.assertEquals([], self._android_device_stub.logging.warnings)
- self.assertIsNotNone(devices)
- self.assertEquals(len(devices), 3)
- self.assertEquals(devices[0].guid, '015d14fec128220c')
- self.assertEquals(devices[1].guid, '015d14fec128220d')
- self.assertEquals(devices[2].guid, '015d14fec128220e')
+ self._android_device_stub.adb_commands.attached_devices = [
+ '015d14fec128220c', '015d14fec128220d', '015d14fec128220e']
+ devices = android_device.FindAllAvailableDevices(finder_options)
+ self.assertEquals([], self._android_device_stub.logging.warnings)
+ self.assertIsNotNone(devices)
+ self.assertEquals(len(devices), 3)
+ self.assertEquals(devices[0].guid, '015d14fec128220c')
+ self.assertEquals(devices[1].guid, '015d14fec128220d')
+ self.assertEquals(devices[2].guid, '015d14fec128220e')
« no previous file with comments | « tools/telemetry/telemetry/core/platform/android_device.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698