| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 import codecs | 5 import codecs |
| 6 import optparse | 6 import optparse |
| 7 import os | 7 import os |
| 8 import sys | 8 import sys |
| 9 import time | 9 import time |
| 10 | 10 |
| 11 from py_utils import cloud_storage # pylint: disable=import-error | 11 from py_utils import cloud_storage # pylint: disable=import-error |
| 12 | 12 |
| 13 from telemetry.core import util | 13 from telemetry.core import util |
| 14 from telemetry.internal.results import chart_json_output_formatter | 14 from telemetry.internal.results import chart_json_output_formatter |
| 15 from telemetry.internal.results import csv_output_formatter | 15 from telemetry.internal.results import csv_output_formatter |
| 16 from telemetry.internal.results import csv_pivot_table_output_formatter | 16 from telemetry.internal.results import csv_pivot_table_output_formatter |
| 17 from telemetry.internal.results import gtest_progress_reporter | 17 from telemetry.internal.results import gtest_progress_reporter |
| 18 from telemetry.internal.results import histogram_set_json_output_formatter | 18 from telemetry.internal.results import histogram_set_json_output_formatter |
| 19 from telemetry.internal.results import html_output_formatter | 19 from telemetry.internal.results import html_output_formatter |
| 20 from telemetry.internal.results import json_3_output_formatter | 20 from telemetry.internal.results import json_3_output_formatter |
| 21 from telemetry.internal.results import json_output_formatter | |
| 22 from telemetry.internal.results import legacy_html_output_formatter | 21 from telemetry.internal.results import legacy_html_output_formatter |
| 23 from telemetry.internal.results import page_test_results | 22 from telemetry.internal.results import page_test_results |
| 24 from telemetry.internal.results import progress_reporter | 23 from telemetry.internal.results import progress_reporter |
| 25 | 24 |
| 26 # Allowed output formats. The default is the first item in the list. | 25 # Allowed output formats. The default is the first item in the list. |
| 27 | 26 |
| 28 _OUTPUT_FORMAT_CHOICES = ( | 27 _OUTPUT_FORMAT_CHOICES = ( |
| 29 'chartjson', | 28 'chartjson', |
| 30 'csv', | 29 'csv', |
| 31 'csv-pivot-table', | 30 'csv-pivot-table', |
| 32 'gtest', | 31 'gtest', |
| 33 'histograms', | 32 'histograms', |
| 34 'html', | 33 'html', |
| 35 'json', | |
| 36 'json-test-results', | 34 'json-test-results', |
| 37 'legacy-html', | 35 'legacy-html', |
| 38 'none', | 36 'none', |
| 39 ) | 37 ) |
| 40 | 38 |
| 41 | 39 |
| 42 # Filenames to use for given output formats. | 40 # Filenames to use for given output formats. |
| 43 _OUTPUT_FILENAME_LOOKUP = { | 41 _OUTPUT_FILENAME_LOOKUP = { |
| 44 'chartjson': 'results-chart.json', | 42 'chartjson': 'results-chart.json', |
| 45 'csv': 'results.csv', | 43 'csv': 'results.csv', |
| 46 'csv-pivot-table': 'results-pivot-table.csv', | 44 'csv-pivot-table': 'results-pivot-table.csv', |
| 47 'histograms': 'histograms.json', | 45 'histograms': 'histograms.json', |
| 48 'html': 'results.html', | 46 'html': 'results.html', |
| 49 'json': 'results.json', | |
| 50 'json-test-results': 'test-results.json', | 47 'json-test-results': 'test-results.json', |
| 51 'legacy-html': 'legacy-results.html' | 48 'legacy-html': 'legacy-results.html' |
| 52 } | 49 } |
| 53 | 50 |
| 54 | 51 |
| 55 def AddResultsOptions(parser): | 52 def AddResultsOptions(parser): |
| 56 group = optparse.OptionGroup(parser, 'Results options') | 53 group = optparse.OptionGroup(parser, 'Results options') |
| 57 group.add_option( | 54 group.add_option( |
| 58 '--output-format', | 55 '--output-format', |
| 59 action='append', | 56 action='append', |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 165 | 162 |
| 166 output_stream = _GetOutputStream(output_format, options.output_dir) | 163 output_stream = _GetOutputStream(output_format, options.output_dir) |
| 167 if output_format == 'csv-pivot-table': | 164 if output_format == 'csv-pivot-table': |
| 168 output_formatters.append( | 165 output_formatters.append( |
| 169 csv_pivot_table_output_formatter.CsvPivotTableOutputFormatter( | 166 csv_pivot_table_output_formatter.CsvPivotTableOutputFormatter( |
| 170 output_stream, trace_tag=options.output_trace_tag)) | 167 output_stream, trace_tag=options.output_trace_tag)) |
| 171 elif output_format == 'html': | 168 elif output_format == 'html': |
| 172 output_formatters.append(html_output_formatter.HtmlOutputFormatter( | 169 output_formatters.append(html_output_formatter.HtmlOutputFormatter( |
| 173 output_stream, benchmark_metadata, options.reset_results, | 170 output_stream, benchmark_metadata, options.reset_results, |
| 174 upload_bucket)) | 171 upload_bucket)) |
| 175 elif output_format == 'json': | |
| 176 output_formatters.append(json_output_formatter.JsonOutputFormatter( | |
| 177 output_stream, benchmark_metadata)) | |
| 178 elif output_format == 'json-test-results': | 172 elif output_format == 'json-test-results': |
| 179 output_formatters.append(json_3_output_formatter.JsonOutputFormatter( | 173 output_formatters.append(json_3_output_formatter.JsonOutputFormatter( |
| 180 output_stream)) | 174 output_stream)) |
| 181 elif output_format == 'chartjson': | 175 elif output_format == 'chartjson': |
| 182 output_formatters.append( | 176 output_formatters.append( |
| 183 chart_json_output_formatter.ChartJsonOutputFormatter( | 177 chart_json_output_formatter.ChartJsonOutputFormatter( |
| 184 output_stream, benchmark_metadata)) | 178 output_stream, benchmark_metadata)) |
| 185 elif output_format == 'csv': | 179 elif output_format == 'csv': |
| 186 output_formatters.append( | 180 output_formatters.append( |
| 187 csv_output_formatter.CsvOutputFormatter( | 181 csv_output_formatter.CsvOutputFormatter( |
| (...skipping 25 matching lines...) Expand all Loading... |
| 213 output_dir=options.output_dir, | 207 output_dir=options.output_dir, |
| 214 value_can_be_added_predicate=value_can_be_added_predicate, | 208 value_can_be_added_predicate=value_can_be_added_predicate, |
| 215 benchmark_enabled=benchmark_enabled) | 209 benchmark_enabled=benchmark_enabled) |
| 216 | 210 |
| 217 results.telemetry_info.benchmark_name = benchmark_metadata.name | 211 results.telemetry_info.benchmark_name = benchmark_metadata.name |
| 218 results.telemetry_info.benchmark_start_epoch = time.time() | 212 results.telemetry_info.benchmark_start_epoch = time.time() |
| 219 if options.results_label: | 213 if options.results_label: |
| 220 results.telemetry_info.label = options.results_label | 214 results.telemetry_info.label = options.results_label |
| 221 | 215 |
| 222 return results | 216 return results |
| OLD | NEW |