OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright 2017 The Chromium Authors. All rights reserved. | 2 # Copyright 2017 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 """ | 6 """ |
7 Unit tests for some APIs with conditional logic in adb_wrapper.py | 7 Unit tests for some APIs with conditional logic in adb_wrapper.py |
8 """ | 8 """ |
9 | 9 |
10 import unittest | 10 import unittest |
11 | 11 |
12 from devil import devil_env | 12 from devil import devil_env |
13 from devil.android import device_errors | 13 from devil.android import device_errors |
14 from devil.android.sdk import adb_wrapper | 14 from devil.android.sdk import adb_wrapper |
15 | 15 |
16 with devil_env.SysPath(devil_env.PYMOCK_PATH): | 16 with devil_env.SysPath(devil_env.PYMOCK_PATH): |
17 import mock # pylint: disable=import-error | 17 import mock # pylint: disable=import-error |
18 | 18 |
19 | 19 |
20 class AdbWrapperTest(unittest.TestCase): | 20 class AdbWrapperTest(unittest.TestCase): |
21 def setUp(self): | 21 def setUp(self): |
22 self.adb = adb_wrapper.AdbWrapper('ABC12345678') | 22 self.device_serial = 'ABC12345678' |
| 23 self.adb = adb_wrapper.AdbWrapper(self.device_serial) |
23 | 24 |
24 def _MockRunDeviceAdbCmd(self, return_value): | 25 def _MockRunDeviceAdbCmd(self, return_value): |
25 return mock.patch.object( | 26 return mock.patch.object( |
26 self.adb, | 27 self.adb, |
27 '_RunDeviceAdbCmd', | 28 '_RunDeviceAdbCmd', |
28 mock.Mock(side_effect=None, return_value=return_value)) | 29 mock.Mock(side_effect=None, return_value=return_value)) |
29 | 30 |
30 def testDisableVerityWhenDisabled(self): | 31 def testDisableVerityWhenDisabled(self): |
31 with self._MockRunDeviceAdbCmd('Verity already disabled on /system'): | 32 with self._MockRunDeviceAdbCmd('Verity already disabled on /system'): |
32 self.adb.DisableVerity() | 33 self.adb.DisableVerity() |
(...skipping 17 matching lines...) Expand all Loading... |
50 def testFailEnableVerity(self): | 51 def testFailEnableVerity(self): |
51 with self._MockRunDeviceAdbCmd('error: closed'): | 52 with self._MockRunDeviceAdbCmd('error: closed'): |
52 self.assertRaises( | 53 self.assertRaises( |
53 device_errors.AdbCommandFailedError, self.adb.EnableVerity) | 54 device_errors.AdbCommandFailedError, self.adb.EnableVerity) |
54 | 55 |
55 def testFailDisableVerity(self): | 56 def testFailDisableVerity(self): |
56 with self._MockRunDeviceAdbCmd('error: closed'): | 57 with self._MockRunDeviceAdbCmd('error: closed'): |
57 self.assertRaises( | 58 self.assertRaises( |
58 device_errors.AdbCommandFailedError, self.adb.DisableVerity) | 59 device_errors.AdbCommandFailedError, self.adb.DisableVerity) |
59 | 60 |
| 61 @mock.patch('devil.utils.cmd_helper.GetCmdStatusAndOutputWithTimeout') |
| 62 def testDeviceUnreachable(self, get_cmd_mock): |
| 63 get_cmd_mock.return_value = ( |
| 64 1, "error: device '%s' not found" % self.device_serial) |
| 65 self.assertRaises( |
| 66 device_errors.DeviceUnreachableError, self.adb.Shell, '/bin/true') |
| 67 |
| 68 @mock.patch('devil.utils.cmd_helper.GetCmdStatusAndOutputWithTimeout') |
| 69 def testWaitingForDevice(self, get_cmd_mock): |
| 70 get_cmd_mock.return_value = (1, '- waiting for device - ') |
| 71 self.assertRaises( |
| 72 device_errors.DeviceUnreachableError, self.adb.Shell, '/bin/true') |
OLD | NEW |