Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 #!/usr/bin/env python | |
| 2 # Copyright 2015 The Chromium Authors. All rights reserved. | |
| 3 # Use of this source code is governed by a BSD-style license that can be | |
| 4 # found in the LICENSE file. | |
| 5 | |
| 6 import json | |
| 7 import os | |
| 8 import sys | |
| 9 | |
| 10 | |
| 11 import common | |
| 12 | |
| 13 | |
| 14 def main_run(args): | |
| 15 filter_tests = [] | |
| 16 if args.filter_file: | |
| 17 filter_tests = json.load(args.filter_file) | |
| 18 | |
| 19 perf_id = args.properties.get('perf-id') | |
| 20 script_args = args.args | |
| 21 test_suite = script_args[0] | |
| 22 | |
| 23 with common.temporary_file() as tempfile_path: | |
| 24 gtest_args = [ | |
| 25 '--target', args.build_config_fs, | |
| 26 '--annotate', 'graphing', | |
| 27 '--perf-id', perf_id, | |
| 28 '--perf-dashboard-id', test_suite, | |
| 29 '--results-url', args.properties.get('results-url'), | |
| 30 '--slave-name', args.properties.get('slavename'), | |
| 31 '--builder-name', args.properties.get('buildername'), | |
| 32 '--build-number', str(args.properties.get('buildnumber')), | |
| 33 '--log-processor-output-file', tempfile_path, | |
| 34 ] | |
| 35 | |
| 36 if 'android' in perf_id: | |
|
iannucci
2015/02/23 18:02:49
let's make this an explicit property (maybe 'andro
shatch
2015/02/23 20:14:21
Done, added support for 'android_mode' in https://
| |
| 37 gtest_args.extend([ | |
| 38 '--no-xvfb', | |
| 39 '--run-python-script', os.path.join( | |
| 40 args.paths['checkout'], 'build', 'android', 'test_runner.py'), | |
| 41 'gtest', '--release', | |
| 42 '--suite', test_suite, | |
| 43 '--verbose', | |
| 44 ]) | |
| 45 else: | |
| 46 gtest_args.extend(['--xvfb', '--test-type', test_suite]) | |
| 47 gtest_args.extend(script_args) | |
| 48 | |
| 49 rc = common.run_runtest(args, gtest_args + filter_tests) | |
| 50 | |
| 51 with open(tempfile_path) as f: | |
| 52 results = json.load(f) | |
| 53 | |
| 54 json.dump({ | |
| 55 'valid': bool(rc == 0), | |
| 56 'failures': results['failed'], | |
| 57 }, args.output) | |
| 58 | |
| 59 return rc | |
| 60 | |
| 61 | |
| 62 def main_compile_targets(args): | |
| 63 if 'android' in args.properties.get('perf-id'): | |
| 64 json.dump(['${name}_apk'], args.output) | |
| 65 else: | |
| 66 json.dump(['$name'], args.output) | |
| 67 | |
| 68 | |
| 69 if __name__ == '__main__': | |
| 70 funcs = { | |
| 71 'run': main_run, | |
| 72 'compile_targets': main_compile_targets, | |
| 73 } | |
| 74 sys.exit(common.run_script(sys.argv[1:], funcs)) | |
| OLD | NEW |