| Index: tools/telemetry/telemetry/page/page_test.py
|
| diff --git a/tools/telemetry/telemetry/page/page_test.py b/tools/telemetry/telemetry/page/page_test.py
|
| index 7e3e08b179b5fe1d4989d2940f730eed29491da9..5ca6addce1b410f3e3d600d4984e5b474ebb2153 100644
|
| --- a/tools/telemetry/telemetry/page/page_test.py
|
| +++ b/tools/telemetry/telemetry/page/page_test.py
|
| @@ -4,6 +4,8 @@
|
| import logging
|
|
|
| from telemetry.core import util
|
| +from telemetry.page import gtest_test_results
|
| +from telemetry.page import page_test_results
|
| from telemetry.page.actions import all_page_actions
|
| from telemetry.page.actions import page_action
|
|
|
| @@ -97,7 +99,7 @@ class PageTest(object):
|
| """Override to customize if the test can be ran for the given page."""
|
| return True
|
|
|
| - def WillRunPageSet(self, tab, results):
|
| + def WillRunPageSet(self, tab):
|
| """Override to do operations before the page set is navigated."""
|
| pass
|
|
|
| @@ -106,6 +108,10 @@ class PageTest(object):
|
| is torn down."""
|
| pass
|
|
|
| + def DidStartHTTPServer(self, tab):
|
| + """Override to do operations after the HTTP server is started."""
|
| + pass
|
| +
|
| def WillNavigateToPage(self, page, tab):
|
| """Override to do operations before the page is navigated."""
|
| pass
|
| @@ -128,6 +134,29 @@ class PageTest(object):
|
| allowing arbitrary page sets entered from the command-line."""
|
| return None
|
|
|
| + def AddOutputOptions(self, parser):
|
| + parser.add_option('--output-format',
|
| + default=self.output_format_choices[0],
|
| + choices=self.output_format_choices,
|
| + help='Output format. Defaults to "%%default". '
|
| + 'Can be %s.' % ', '.join(self.output_format_choices))
|
| +
|
| + @property
|
| + def output_format_choices(self):
|
| + """Allowed output formats. The default is the first item in the list."""
|
| + return ['gtest', 'none']
|
| +
|
| + def PrepareResults(self, options):
|
| + if options.output_format == 'gtest':
|
| + return gtest_test_results.GTestTestResults()
|
| + elif options.output_format == 'none':
|
| + return page_test_results.PageTestResults()
|
| + 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)))
|
| +
|
| def Run(self, options, page, tab, results):
|
| self.options = options
|
| compound_action = GetCompoundActionFromPage(page, self._action_name_to_run)
|
|
|