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

Side by Side Diff: build/android/buildbot/bb_device_steps.py

Issue 22825016: Archive webkit_tests results on android bots if requested. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: remove stray blank lines Created 7 years, 4 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 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 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2013 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 import collections 6 import collections
7 import glob 7 import glob
8 import multiprocessing 8 import multiprocessing
9 import os 9 import os
10 import shutil 10 import shutil
11 import sys 11 import sys
12 12
13 import bb_utils 13 import bb_utils
14 import bb_annotations 14 import bb_annotations
15 15
16 sys.path.append(os.path.join(os.path.dirname(__file__), '..')) 16 sys.path.append(os.path.join(os.path.dirname(__file__), '..'))
17 import provision_devices 17 import provision_devices
18 from pylib import android_commands 18 from pylib import android_commands
19 from pylib import constants 19 from pylib import constants
20 from pylib.gtest import gtest_config 20 from pylib.gtest import gtest_config
21 21
22 sys.path.append(os.path.join( 22 sys.path.append(os.path.join(
23 constants.DIR_SOURCE_ROOT, 'third_party', 'android_testrunner')) 23 constants.DIR_SOURCE_ROOT, 'third_party', 'android_testrunner'))
24 import errors 24 import errors
25 25
26 26
27 SLAVE_SCRIPTS_DIR = os.path.join(bb_utils.BB_BUILD_DIR, 'scripts', 'slave')
27 CHROME_SRC = constants.DIR_SOURCE_ROOT 28 CHROME_SRC = constants.DIR_SOURCE_ROOT
28 LOGCAT_DIR = os.path.join(CHROME_SRC, 'out', 'logcat') 29 LOGCAT_DIR = os.path.join(CHROME_SRC, 'out', 'logcat')
29 30
30 # Describes an instrumation test suite: 31 # Describes an instrumation test suite:
31 # test: Name of test we're running. 32 # test: Name of test we're running.
32 # apk: apk to be installed. 33 # apk: apk to be installed.
33 # apk_package: package for the apk to be installed. 34 # apk_package: package for the apk to be installed.
34 # test_apk: apk to run tests on. 35 # test_apk: apk to run tests on.
35 # test_data: data folder in format destination:source. 36 # test_data: data folder in format destination:source.
36 # host_driven_root: The host-driven test root directory. 37 # host_driven_root: The host-driven test root directory.
(...skipping 26 matching lines...) Expand all
63 'AndroidWebViewTest', 64 'AndroidWebViewTest',
64 'webview:android_webview/test/data/device_files'), 65 'webview:android_webview/test/data/device_files'),
65 ]) 66 ])
66 67
67 VALID_TESTS = set(['chromedriver', 'ui', 'unit', 'webkit', 'webkit_layout', 68 VALID_TESTS = set(['chromedriver', 'ui', 'unit', 'webkit', 'webkit_layout',
68 'webrtc']) 69 'webrtc'])
69 70
70 RunCmd = bb_utils.RunCmd 71 RunCmd = bb_utils.RunCmd
71 72
72 73
74 def SrcPath(*path):
75 return os.path.join(constants.DIR_SOURCE_ROOT, *path)
76
77
73 # multiprocessing map_async requires a top-level function for pickle library. 78 # multiprocessing map_async requires a top-level function for pickle library.
74 def RebootDeviceSafe(device): 79 def RebootDeviceSafe(device):
75 """Reboot a device, wait for it to start, and squelch timeout exceptions.""" 80 """Reboot a device, wait for it to start, and squelch timeout exceptions."""
76 try: 81 try:
77 android_commands.AndroidCommands(device).Reboot(True) 82 android_commands.AndroidCommands(device).Reboot(True)
78 except errors.DeviceUnresponsiveError as e: 83 except errors.DeviceUnresponsiveError as e:
79 return e 84 return e
80 85
81 86
82 def RebootDevices(): 87 def RebootDevices():
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 ['--additional-expectations=%s' % os.path.join(CHROME_SRC, *f)]) 223 ['--additional-expectations=%s' % os.path.join(CHROME_SRC, *f)])
219 224
220 # TODO(dpranke): Remove this block after 225 # TODO(dpranke): Remove this block after
221 # https://codereview.chromium.org/12927002/ lands. 226 # https://codereview.chromium.org/12927002/ lands.
222 for f in options.factory_properties.get('additional_expectations_files', []): 227 for f in options.factory_properties.get('additional_expectations_files', []):
223 cmd_args.extend( 228 cmd_args.extend(
224 ['--additional-expectations=%s' % os.path.join(CHROME_SRC, *f)]) 229 ['--additional-expectations=%s' % os.path.join(CHROME_SRC, *f)])
225 230
226 RunCmd(['webkit/tools/layout_tests/run_webkit_tests.py'] + cmd_args) 231 RunCmd(['webkit/tools/layout_tests/run_webkit_tests.py'] + cmd_args)
227 232
233 if options.factory_properties.get('archive_webkit_results', False):
234 bb_annotations.PrintNamedStep('archive_webkit_results')
235 RunCmd([os.path.join(SLAVE_SCRIPTS_DIR, 'archive_layout_test_results.py'),
236 '--results-dir', '..layout-test-results',
Dirk Pranke 2013/08/20 23:31:07 This path seems really wrong, but it matches line
237 '--target', options.target,
238 '--build-dir', SrcPath('out'),
bulach 2013/08/21 09:06:14 please, use build/android/pylib/cmd_helper.py :: O
Isaac (away) 2013/08/21 10:10:14 Gosh, I'm not familiar with that. However, we are
Dirk Pranke 2013/08/28 19:45:47 Based on further conversation w/ Isaac, I'm going
239 '--build-number', str(options.build_properties.get('buildnumber', '')),
240 '--builder-name', options.build_properties.get('buildername', '')])
241
228 242
229 def SpawnLogcatMonitor(): 243 def SpawnLogcatMonitor():
230 shutil.rmtree(LOGCAT_DIR, ignore_errors=True) 244 shutil.rmtree(LOGCAT_DIR, ignore_errors=True)
231 bb_utils.SpawnCmd([ 245 bb_utils.SpawnCmd([
232 os.path.join(CHROME_SRC, 'build', 'android', 'adb_logcat_monitor.py'), 246 os.path.join(CHROME_SRC, 'build', 'android', 'adb_logcat_monitor.py'),
233 LOGCAT_DIR]) 247 LOGCAT_DIR])
234 248
235 # Wait for logcat_monitor to pull existing logcat 249 # Wait for logcat_monitor to pull existing logcat
236 RunCmd(['sleep', '5']) 250 RunCmd(['sleep', '5'])
237 251
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
379 if unknown_tests: 393 if unknown_tests:
380 return sys.exit('Unknown tests %s' % list(unknown_tests)) 394 return sys.exit('Unknown tests %s' % list(unknown_tests))
381 395
382 setattr(options, 'target', options.factory_properties.get('target', 'Debug')) 396 setattr(options, 'target', options.factory_properties.get('target', 'Debug'))
383 397
384 MainTestWrapper(options) 398 MainTestWrapper(options)
385 399
386 400
387 if __name__ == '__main__': 401 if __name__ == '__main__':
388 sys.exit(main(sys.argv)) 402 sys.exit(main(sys.argv))
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