| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright 2014 The Chromium Authors. All rights reserved. | 2 # Copyright 2014 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 the contents of device_utils.py (mostly DeviceUtils). | 7 Unit tests for the contents of device_utils.py (mostly DeviceUtils). |
| 8 """ | 8 """ |
| 9 | 9 |
| 10 # pylint: disable=C0321 | 10 # pylint: disable=C0321 |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 sys.path.append(os.path.join( | 36 sys.path.append(os.path.join( |
| 37 constants.DIR_SOURCE_ROOT, 'third_party', 'pymock')) | 37 constants.DIR_SOURCE_ROOT, 'third_party', 'pymock')) |
| 38 import mock # pylint: disable=F0401 | 38 import mock # pylint: disable=F0401 |
| 39 | 39 |
| 40 | 40 |
| 41 class DeviceUtilsTest(unittest.TestCase): | 41 class DeviceUtilsTest(unittest.TestCase): |
| 42 | 42 |
| 43 def testInitWithStr(self): | 43 def testInitWithStr(self): |
| 44 serial_as_str = str('0123456789abcdef') | 44 serial_as_str = str('0123456789abcdef') |
| 45 d = device_utils.DeviceUtils('0123456789abcdef') | 45 d = device_utils.DeviceUtils('0123456789abcdef') |
| 46 self.assertEqual(serial_as_str, d.old_interface.GetDevice()) | 46 self.assertEqual(serial_as_str, d.device_serial) |
| 47 | 47 |
| 48 def testInitWithUnicode(self): | 48 def testInitWithUnicode(self): |
| 49 serial_as_unicode = unicode('fedcba9876543210') | 49 serial_as_unicode = unicode('fedcba9876543210') |
| 50 d = device_utils.DeviceUtils(serial_as_unicode) | 50 d = device_utils.DeviceUtils(serial_as_unicode) |
| 51 self.assertEqual(serial_as_unicode, d.old_interface.GetDevice()) | 51 self.assertEqual(serial_as_unicode, d.device_serial) |
| 52 | 52 |
| 53 def testInitWithAdbWrapper(self): | 53 def testInitWithAdbWrapper(self): |
| 54 serial = '123456789abcdef0' | 54 serial = '123456789abcdef0' |
| 55 a = adb_wrapper.AdbWrapper(serial) | 55 a = adb_wrapper.AdbWrapper(serial) |
| 56 d = device_utils.DeviceUtils(a) | 56 d = device_utils.DeviceUtils(a) |
| 57 self.assertEqual(serial, d.old_interface.GetDevice()) | 57 self.assertEqual(serial, d.device_serial) |
| 58 | 58 |
| 59 def testInitWithAndroidCommands(self): | 59 def testInitWithAndroidCommands(self): |
| 60 serial = '0fedcba987654321' | 60 serial = '0fedcba987654321' |
| 61 a = android_commands.AndroidCommands(device=serial) | 61 a = android_commands.AndroidCommands(device=serial) |
| 62 d = device_utils.DeviceUtils(a) | 62 d = device_utils.DeviceUtils(a) |
| 63 self.assertEqual(serial, d.old_interface.GetDevice()) | 63 self.assertEqual(serial, d.device_serial) |
| 64 | 64 |
| 65 def testInitWithNone(self): | 65 def testInitWithMissing_fails(self): |
| 66 d = device_utils.DeviceUtils(None) | 66 with self.assertRaises(ValueError): |
| 67 self.assertIsNone(d.old_interface.GetDevice()) | 67 device_utils.DeviceUtils(None) |
| 68 with self.assertRaises(ValueError): |
| 69 device_utils.DeviceUtils('') |
| 68 | 70 |
| 69 | 71 |
| 70 class MockTempFile(object): | 72 class MockTempFile(object): |
| 71 | 73 |
| 72 def __init__(self, name='/tmp/some/file'): | 74 def __init__(self, name='/tmp/some/file'): |
| 73 self.file = mock.MagicMock(spec=file) | 75 self.file = mock.MagicMock(spec=file) |
| 74 self.file.name = name | 76 self.file.name = name |
| 75 | 77 |
| 76 def __enter__(self): | 78 def __enter__(self): |
| 77 return self.file | 79 return self.file |
| (...skipping 1467 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1545 }, | 1547 }, |
| 1546 self.device.GetMemoryUsageForPid(1234)) | 1548 self.device.GetMemoryUsageForPid(1234)) |
| 1547 | 1549 |
| 1548 def testGetMemoryUsageForPid_invalidPid(self): | 1550 def testGetMemoryUsageForPid_invalidPid(self): |
| 1549 with self.assertCalls( | 1551 with self.assertCalls( |
| 1550 "adb -s 0123456789abcdef shell 'showmap 4321'", | 1552 "adb -s 0123456789abcdef shell 'showmap 4321'", |
| 1551 'cannot open /proc/4321/smaps: No such file or directory\r\n'): | 1553 'cannot open /proc/4321/smaps: No such file or directory\r\n'): |
| 1552 self.assertEqual({}, self.device.GetMemoryUsageForPid(4321)) | 1554 self.assertEqual({}, self.device.GetMemoryUsageForPid(4321)) |
| 1553 | 1555 |
| 1554 | 1556 |
| 1555 class DeviceUtilsStrTest(DeviceUtilsOldImplTest): | 1557 class DeviceUtilsStrTest(DeviceUtilsNewImplTest): |
| 1556 | 1558 |
| 1557 def testStr_noAdbCalls(self): | 1559 def testStr_noPublicAdbCalls(self): |
| 1558 with self.assertNoAdbCalls(): | 1560 with self.assertCalls(): |
| 1559 self.assertEqual('0123456789abcdef', str(self.device)) | 1561 self.assertEqual('0123456789abcdef', str(self.device)) |
| 1560 | 1562 |
| 1561 def testStr_noSerial(self): | |
| 1562 self.device = device_utils.DeviceUtils(None) | |
| 1563 with self.assertCalls('adb get-serialno', '0123456789abcdef'): | |
| 1564 self.assertEqual('0123456789abcdef', str(self.device)) | |
| 1565 | |
| 1566 def testStr_noSerial_noDevices(self): | |
| 1567 self.device = device_utils.DeviceUtils(None) | |
| 1568 with self.assertCalls('adb get-serialno', 'unknown'), ( | |
| 1569 self.assertRaises(device_errors.NoDevicesError)): | |
| 1570 str(self.device) | |
| 1571 | |
| 1572 | 1563 |
| 1573 if __name__ == '__main__': | 1564 if __name__ == '__main__': |
| 1574 logging.getLogger().setLevel(logging.DEBUG) | 1565 logging.getLogger().setLevel(logging.DEBUG) |
| 1575 unittest.main(verbosity=2) | 1566 unittest.main(verbosity=2) |
| 1576 | 1567 |
| OLD | NEW |