| Index: tools/telemetry/telemetry/page/csv_page_measurement_results.py
|
| diff --git a/tools/telemetry/telemetry/page/csv_page_measurement_results.py b/tools/telemetry/telemetry/page/csv_page_measurement_results.py
|
| deleted file mode 100644
|
| index 56eac05c9c8c8e45eb883192d9c119bc10ce6b0b..0000000000000000000000000000000000000000
|
| --- a/tools/telemetry/telemetry/page/csv_page_measurement_results.py
|
| +++ /dev/null
|
| @@ -1,91 +0,0 @@
|
| -# Copyright 2012 The Chromium Authors. All rights reserved.
|
| -# Use of this source code is governed by a BSD-style license that can be
|
| -# found in the LICENSE file.
|
| -import csv
|
| -
|
| -from telemetry.page import page_measurement_results
|
| -from telemetry.value import merge_values
|
| -
|
| -class CsvPageMeasurementResults(
|
| - page_measurement_results.PageMeasurementResults):
|
| - def __init__(self, output_stream, output_after_every_page=None):
|
| - super(CsvPageMeasurementResults, self).__init__(output_stream)
|
| - self._results_writer = csv.writer(self._output_stream)
|
| - self._did_output_header = False
|
| - self._header_names_written_to_writer = None
|
| - self._output_after_every_page = output_after_every_page
|
| -
|
| - def DidMeasurePage(self):
|
| - try:
|
| - assert self.page_specific_values_for_current_page != None
|
| -
|
| - values = self.page_specific_values_for_current_page
|
| - if not values or not self._output_after_every_page:
|
| - # Do not output if no results were added on this page or if output flag
|
| - # is not set.
|
| - return
|
| -
|
| - if not self._did_output_header:
|
| - self._OutputHeader()
|
| - else:
|
| - self._ValidateOutputNamesForCurrentPage()
|
| - self._OutputValuesForPage(values[0].page, values)
|
| - finally:
|
| - super(CsvPageMeasurementResults, self).DidMeasurePage()
|
| -
|
| - def PrintSummary(self):
|
| - try:
|
| - if self._output_after_every_page:
|
| - return
|
| -
|
| - self._OutputHeader()
|
| - values = merge_values.MergeLikeValuesFromSamePage(
|
| - self.all_page_specific_values)
|
| - value_groups_by_page = merge_values.GroupStably(
|
| - values, lambda value: value.page.url)
|
| - for values_for_page in value_groups_by_page:
|
| - self._OutputValuesForPage(values_for_page[0].page, values_for_page)
|
| - finally:
|
| - super(CsvPageMeasurementResults, self).PrintSummary()
|
| -
|
| - def _ValidateOutputNamesForCurrentPage(self):
|
| - assert self._did_output_header
|
| - current_page_value_names = set([
|
| - value.name for value in self.page_specific_values_for_current_page])
|
| - header_names_written_to_writer = set(self._header_names_written_to_writer)
|
| - assert header_names_written_to_writer >= current_page_value_names, \
|
| - """To use CsvPageMeasurementResults, you must add the same
|
| -result names for every page. In this case, the following extra results were
|
| -added:
|
| -%s
|
| -""" % (current_page_value_names - header_names_written_to_writer)
|
| -
|
| - def _OutputHeader(self):
|
| - assert not self._did_output_header
|
| - all_value_names = list(
|
| - self.all_value_names_that_have_been_seen)
|
| - all_value_names.sort()
|
| - self._did_output_header = True
|
| - self._header_names_written_to_writer = list(all_value_names)
|
| -
|
| - row = ['page_name']
|
| - for value_name in all_value_names:
|
| - units = self.GetUnitsForValueName(value_name)
|
| - row.append('%s (%s)' % (value_name, units))
|
| - self._results_writer.writerow(row)
|
| - self._output_stream.flush()
|
| -
|
| - def _OutputValuesForPage(self, page, page_values):
|
| - row = [page.display_name]
|
| - values_by_value_name = {}
|
| - for value in page_values:
|
| - values_by_value_name[value.name] = value
|
| -
|
| - for value_name in self._header_names_written_to_writer:
|
| - value = values_by_value_name.get(value_name, None)
|
| - if value and value.GetRepresentativeNumber():
|
| - row.append('%s' % value.GetRepresentativeNumber())
|
| - else:
|
| - row.append('-')
|
| - self._results_writer.writerow(row)
|
| - self._output_stream.flush()
|
|
|