| 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 codecs | 7 import codecs |
| 8 import json |
| 8 import sys | 9 import sys |
| 9 import os | 10 import os |
| 10 | 11 |
| 11 tracing_path = os.path.abspath(os.path.join( | 12 tracing_path = os.path.abspath(os.path.join( |
| 12 os.path.dirname(os.path.realpath(__file__)), '..')) | 13 os.path.dirname(os.path.realpath(__file__)), '..')) |
| 13 sys.path.append(tracing_path) | 14 sys.path.append(tracing_path) |
| 14 from tracing import results_renderer | 15 from tracing import results_renderer |
| 15 | 16 |
| 16 | 17 |
| 17 def main(): | 18 def main(): |
| 18 parser = argparse.ArgumentParser(description='Upgrade a results2 instance or ' | 19 parser = argparse.ArgumentParser(description='Upgrade a results2 instance or ' |
| 19 'add a new ValueSet JSON.', add_help=False) | 20 'add a new ValueSet JSON.', add_help=False) |
| 20 parser.add_argument('html_path', metavar='HTML_PATH', | 21 parser.add_argument('html_path', metavar='HTML_PATH', |
| 21 help='HTML file path (output).') | 22 help='HTML file path (output).') |
| 22 parser.add_argument('-h', '--help', action='help', | 23 parser.add_argument('-h', '--help', action='help', |
| 23 help='Show this help message and exit.') | 24 help='Show this help message and exit.') |
| 25 parser.add_argument('--html', nargs='+', default=[], |
| 26 help='Zero or more HTML file paths (input).') |
| 27 parser.add_argument('--json', nargs='+', default=[], |
| 28 help='Zero or more JSON file paths (input).') |
| 24 args = parser.parse_args() | 29 args = parser.parse_args() |
| 25 | 30 |
| 31 histograms = [] |
| 32 |
| 33 for html_path in args.html: |
| 34 histograms.extend(results_renderer.ReadExistingResults( |
| 35 open(html_path, 'r'))) |
| 36 |
| 37 for json_path in args.json: |
| 38 histograms.extend(json.load(open(json_path, 'r'))) |
| 39 |
| 26 open(args.html_path, 'a').close() # Create file if it doesn't exist. | 40 open(args.html_path, 'a').close() # Create file if it doesn't exist. |
| 27 with codecs.open(args.html_path, | 41 with codecs.open(args.html_path, |
| 28 mode='r+', encoding='utf-8') as output_stream: | 42 mode='r+', encoding='utf-8') as output_stream: |
| 29 results_renderer.RenderHTMLView([], output_stream) | 43 results_renderer.RenderHTMLView(histograms, output_stream) |
| 30 | 44 |
| 31 if __name__ == '__main__': | 45 if __name__ == '__main__': |
| 32 sys.exit(main()) | 46 sys.exit(main()) |
| OLD | NEW |