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

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

Issue 1218823006: 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 50e088a9734f310b84ae6ef30d72783d90302799..efeda96751a1b41fc6e6bd0d61fb80cb0e8cfd63 100644
--- a/tools/telemetry/telemetry/core/platform/android_device_unittest.py
+++ b/tools/telemetry/telemetry/core/platform/android_device_unittest.py
@@ -4,122 +4,136 @@
import unittest
-from telemetry.core import util
from telemetry.core.platform import android_device
+from telemetry.core.platform import android_platform_backend
from telemetry.internal.browser import browser_options
from telemetry.unittest_util import system_stub
-util.AddDirToPythonPath(util.GetChromiumSrcDir(), 'build', 'android')
-from pylib.device import adb_wrapper # 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._devices_patcher = mock.patch(
- 'pylib.device.adb_wrapper.AdbWrapper.Devices')
- self._healthy_device_mock = self._devices_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._devices_patcher.stop()
self._android_device_stub.Restore()
-class AndroidDeviceTest(_BaseAndroidDeviceTest):
- def testGetAllAttachedAndroidDevices(self):
- self._healthy_device_mock.return_value = [
- adb_wrapper.AdbWrapper('01'), adb_wrapper.AdbWrapper('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 = [
- adb_wrapper.AdbWrapper('015d14fec128220c'),
- adb_wrapper.AdbWrapper('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 = [
- adb_wrapper.AdbWrapper('015d14fec128220c'),
- adb_wrapper.AdbWrapper('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 = [
- adb_wrapper.AdbWrapper('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 = [
- adb_wrapper.AdbWrapper('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 = [
- adb_wrapper.AdbWrapper('015d14fec128220c'),
- adb_wrapper.AdbWrapper('015d14fec128220d'),
- adb_wrapper.AdbWrapper('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