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

Side by Side Diff: build/android/pylib/gtest/setup.py

Issue 40523004: [Android] Improve exception message when failed to get test list. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2013 The Chromium Authors. All rights reserved. 1 # Copyright 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Generates test runner factory and tests for GTests.""" 5 """Generates test runner factory and tests for GTests."""
6 6
7 import fnmatch 7 import fnmatch
8 import glob 8 import glob
9 import logging 9 import logging
10 import os 10 import os
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 'system_wrappers_unittests': 54 'system_wrappers_unittests':
55 'system_wrappers/source/system_wrappers_unittests.isolate', 55 'system_wrappers/source/system_wrappers_unittests.isolate',
56 'test_support_unittests': 'test/test_support_unittests.isolate', 56 'test_support_unittests': 'test/test_support_unittests.isolate',
57 'tools_unittests': 'tools/tools_unittests.isolate', 57 'tools_unittests': 'tools/tools_unittests.isolate',
58 'video_engine_core_unittests': 58 'video_engine_core_unittests':
59 'video_engine/video_engine_core_unittests.isolate', 59 'video_engine/video_engine_core_unittests.isolate',
60 'voice_engine_unittests': 'voice_engine/voice_engine_unittests.isolate', 60 'voice_engine_unittests': 'voice_engine/voice_engine_unittests.isolate',
61 } 61 }
62 62
63 # Append the WebRTC tests with the full path from Chromium's src/ root. 63 # Append the WebRTC tests with the full path from Chromium's src/ root.
64 for test,isolate_path in _WEBRTC_ISOLATE_FILE_PATHS.items(): 64 for test, isolate_path in _WEBRTC_ISOLATE_FILE_PATHS.items():
65 _ISOLATE_FILE_PATHS[test] = 'third_party/webrtc/%s' % isolate_path 65 _ISOLATE_FILE_PATHS[test] = 'third_party/webrtc/%s' % isolate_path
66 66
67 # Used for filtering large data deps at a finer grain than what's allowed in 67 # Used for filtering large data deps at a finer grain than what's allowed in
68 # isolate files since pushing deps to devices is expensive. 68 # isolate files since pushing deps to devices is expensive.
69 # Wildcards are allowed. 69 # Wildcards are allowed.
70 _DEPS_EXCLUSION_LIST = [ 70 _DEPS_EXCLUSION_LIST = [
71 'chrome/test/data/extensions/api_test', 71 'chrome/test/data/extensions/api_test',
72 'chrome/test/data/extensions/secure_shell', 72 'chrome/test/data/extensions/secure_shell',
73 'chrome/test/data/firefox*', 73 'chrome/test/data/firefox*',
74 'chrome/test/data/gpu', 74 'chrome/test/data/gpu',
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 204
205 Returns: 205 Returns:
206 All the tests in the test suite. 206 All the tests in the test suite.
207 """ 207 """
208 for device in devices: 208 for device in devices:
209 try: 209 try:
210 logging.info('Obtaining tests from %s', device) 210 logging.info('Obtaining tests from %s', device)
211 return runner_factory(device, 0).GetAllTests() 211 return runner_factory(device, 0).GetAllTests()
212 except (android_commands.errors.WaitForResponseTimedOutError, 212 except (android_commands.errors.WaitForResponseTimedOutError,
213 android_commands.errors.DeviceUnresponsiveError), e: 213 android_commands.errors.DeviceUnresponsiveError), e:
214 logging.warning('Failed obtaining tests from %s with exception: %s', 214 logging.warning('Failed obtaining test list from %s with exception: %s',
215 device, e) 215 device, e)
216 raise Exception('No device available to get the list of tests.') 216 raise Exception('Failed to obtain test list from devices.')
217 217
218 218
219 def _FilterTestsUsingPrefixes(all_tests, pre=False, manual=False): 219 def _FilterTestsUsingPrefixes(all_tests, pre=False, manual=False):
220 """Removes tests with disabled prefixes. 220 """Removes tests with disabled prefixes.
221 221
222 Args: 222 Args:
223 all_tests: List of tests to filter. 223 all_tests: List of tests to filter.
224 pre: If True, include tests with PRE_ prefix. 224 pre: If True, include tests with PRE_ prefix.
225 manual: If True, include tests with MANUAL_ prefix. 225 manual: If True, include tests with MANUAL_ prefix.
226 226
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 if test_options.gtest_filter: 311 if test_options.gtest_filter:
312 tests = unittest_util.FilterTestNames(tests, test_options.gtest_filter) 312 tests = unittest_util.FilterTestNames(tests, test_options.gtest_filter)
313 313
314 # Coalesce unit tests into a single test per device 314 # Coalesce unit tests into a single test per device
315 if test_options.suite_name != 'content_browsertests': 315 if test_options.suite_name != 'content_browsertests':
316 num_devices = len(devices) 316 num_devices = len(devices)
317 tests = [':'.join(tests[i::num_devices]) for i in xrange(num_devices)] 317 tests = [':'.join(tests[i::num_devices]) for i in xrange(num_devices)]
318 tests = [t for t in tests if t] 318 tests = [t for t in tests if t]
319 319
320 return (TestRunnerFactory, tests) 320 return (TestRunnerFactory, tests)
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698