OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright 2016 The Chromium Authors. All rights reserved. | 2 # Copyright 2016 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 argparse | 6 import argparse |
7 import json | 7 import json |
8 import sys | 8 import sys |
9 | 9 |
10 from gpu_tests import path_util | 10 from gpu_tests import path_util |
11 import gpu_project_config | 11 import gpu_project_config |
12 | 12 |
13 path_util.SetupTelemetryPaths() | 13 path_util.SetupTelemetryPaths() |
14 | 14 |
15 from telemetry.testing import browser_test_runner | 15 from telemetry.testing import browser_test_runner |
16 | 16 |
17 def PostprocessJSON(file_name): | 17 def PostprocessJSON(file_name, run_test_args): |
18 def TrimPrefix(s): | 18 def TrimPrefix(s): |
19 return s[1 + s.rfind('.'):] | 19 return s[1 + s.rfind('.'):] |
20 with open(file_name) as f: | 20 with open(file_name) as f: |
21 test_result = json.load(f) | 21 test_result = json.load(f) |
22 test_result['successes'] = map(TrimPrefix, test_result['successes']) | 22 test_result['successes'] = map(TrimPrefix, test_result['successes']) |
23 test_result['failures'] = map(TrimPrefix, test_result['failures']) | 23 test_result['failures'] = map(TrimPrefix, test_result['failures']) |
| 24 test_result['run_test_args'] = run_test_args |
24 with open(file_name, 'w') as f: | 25 with open(file_name, 'w') as f: |
25 json.dump(test_result, f) | 26 json.dump(test_result, f) |
26 | 27 |
27 def main(): | 28 def main(): |
28 options = browser_test_runner.TestRunOptions() | 29 options = browser_test_runner.TestRunOptions() |
29 rest_args = sys.argv[1:] | 30 rest_args = sys.argv[1:] |
30 retval = browser_test_runner.Run( | 31 retval = browser_test_runner.Run( |
31 gpu_project_config.CONFIG, options, rest_args) | 32 gpu_project_config.CONFIG, options, rest_args) |
32 # Postprocess the outputted JSON to trim all of the prefixes from | 33 # Postprocess the outputted JSON to trim all of the prefixes from |
33 # the test names, to keep them as similar to the old form as | 34 # the test names, to keep them as similar to the old form as |
34 # possible -- and keep them from getting crazily long. | 35 # possible -- and keep them from getting crazily long. |
35 parser = argparse.ArgumentParser(description='Temporary argument parser') | 36 parser = argparse.ArgumentParser(description='Temporary argument parser') |
36 parser.add_argument( | 37 parser.add_argument( |
37 '--write-abbreviated-json-results-to', metavar='FILENAME', | 38 '--write-abbreviated-json-results-to', metavar='FILENAME', |
38 action='store', | 39 action='store', |
39 help=('Full path for json results')) | 40 help=('Full path for json results')) |
40 option, _ = parser.parse_known_args(rest_args) | 41 option, _ = parser.parse_known_args(rest_args) |
41 if option.write_abbreviated_json_results_to: | 42 if option.write_abbreviated_json_results_to: |
42 PostprocessJSON(option.write_abbreviated_json_results_to) | 43 PostprocessJSON(option.write_abbreviated_json_results_to, rest_args) |
43 return retval | 44 return retval |
44 | 45 |
45 if __name__ == '__main__': | 46 if __name__ == '__main__': |
46 sys.exit(main()) | 47 sys.exit(main()) |
OLD | NEW |