Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(261)

Unified Diff: tools/telemetry/telemetry/page/page_measurement.py

Issue 22981005: [telemetry] Move Results options out of PageTest/Measurement into their own module. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge and lint. Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/telemetry/telemetry/page/gtest_test_results.py ('k') | tools/telemetry/telemetry/page/page_runner.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/telemetry/telemetry/page/page_measurement.py
diff --git a/tools/telemetry/telemetry/page/page_measurement.py b/tools/telemetry/telemetry/page/page_measurement.py
index be3bb51aca39bf3ab31127f50fcd213c734e2a99..8d2cdb0c849af83c2c83f075e2e83900a0bca60e 100644
--- a/tools/telemetry/telemetry/page/page_measurement.py
+++ b/tools/telemetry/telemetry/page/page_measurement.py
@@ -1,21 +1,16 @@
# Copyright (c) 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 os
-import sys
-
-from telemetry.page import block_page_measurement_results
-from telemetry.page import buildbot_page_measurement_results
-from telemetry.page import csv_page_measurement_results
-from telemetry.page import html_page_measurement_results
-from telemetry.page import page_measurement_results
+
from telemetry.page import page_test
+
class MeasurementFailure(page_test.Failure):
"""Exception that can be thrown from MeasurePage to indicate an undesired but
designed-for problem."""
pass
+
class PageMeasurement(page_test.PageTest):
"""Glue code for running a measurement across a set of pages.
@@ -59,56 +54,6 @@ class PageMeasurement(page_test.PageTest):
self.MeasurePage(page, tab, results)
results.DidMeasurePage()
- def AddOutputOptions(self, parser):
- super(PageMeasurement, self).AddOutputOptions(parser)
- parser.add_option('-o', '--output',
- dest='output_file',
- help='Redirects output to a file. Defaults to stdout.')
- parser.add_option('--output-trace-tag',
- default='',
- help='Append a tag to the key of each result trace.')
- parser.add_option('--reset-html-results', action='store_true',
- help='Delete all stored runs in HTML output')
-
- @property
- def output_format_choices(self):
- return ['html', 'buildbot', 'block', 'csv', 'none']
-
- def PrepareResults(self, options):
- if hasattr(options, 'output_file') and options.output_file:
- output_file = os.path.expanduser(options.output_file)
- open(output_file, 'a').close() # Create file if it doesn't exist.
- output_stream = open(output_file, 'r+')
- else:
- output_stream = sys.stdout
- if not hasattr(options, 'output_format'):
- options.output_format = self.output_format_choices[0]
- if not hasattr(options, 'output_trace_tag'):
- options.output_trace_tag = ''
-
- if options.output_format == 'csv':
- return csv_page_measurement_results.CsvPageMeasurementResults(
- output_stream,
- self.results_are_the_same_on_every_page)
- elif options.output_format == 'block':
- return block_page_measurement_results.BlockPageMeasurementResults(
- output_stream)
- elif options.output_format == 'buildbot':
- return buildbot_page_measurement_results.BuildbotPageMeasurementResults(
- trace_tag=options.output_trace_tag)
- elif options.output_format == 'html':
- return html_page_measurement_results.HtmlPageMeasurementResults(
- output_stream, self.__class__.__name__, options.reset_html_results,
- options.browser_type, trace_tag=options.output_trace_tag)
- elif options.output_format == 'none':
- return page_measurement_results.PageMeasurementResults(
- trace_tag=options.output_trace_tag)
- else:
- # Should never be reached. The parser enforces the choices.
- raise Exception('Invalid --output-format "%s". Valid choices are: %s'
- % (options.output_format,
- ', '.join(self.output_format_choices)))
-
@property
def results_are_the_same_on_every_page(self):
"""By default, measurements are assumed to output the same values for every
« no previous file with comments | « tools/telemetry/telemetry/page/gtest_test_results.py ('k') | tools/telemetry/telemetry/page/page_runner.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698