| Index: tools/telemetry/telemetry/benchmark.py
|
| diff --git a/tools/telemetry/telemetry/benchmark.py b/tools/telemetry/telemetry/benchmark.py
|
| index 0c94fc1ef004f68d64c1afb5cf71864ed229e2cf..7f3f1aefb0dc5ed6ac1420da3ca693b912cdfe32 100644
|
| --- a/tools/telemetry/telemetry/benchmark.py
|
| +++ b/tools/telemetry/telemetry/benchmark.py
|
| @@ -11,6 +11,7 @@
|
| from telemetry.internal import story_runner
|
| from telemetry.internal.util import exception_formatter
|
| from telemetry import page
|
| +from telemetry.page import page_set
|
| from telemetry.page import page_test
|
| from telemetry.page import test_expectations
|
| from telemetry.web_perf import timeline_based_measurement
|
| @@ -241,17 +242,24 @@
|
| self.SetupTraceRerunOptions(options, opts)
|
| return timeline_based_measurement.TimelineBasedMeasurement(opts)
|
|
|
| + def CreatePageSet(self, options): # pylint: disable=unused-argument
|
| + """Get the page set this test will run on.
|
| +
|
| + By default, it will create a page set from the this test's page_set
|
| + attribute. Override to generate a custom page set.
|
| + """
|
| + if not hasattr(self, 'page_set'):
|
| + raise NotImplementedError('This test has no "page_set" attribute.')
|
| + if not issubclass(self.page_set, page_set.PageSet):
|
| + raise TypeError('"%s" is not a PageSet.' % self.page_set.__name__)
|
| + return self.page_set()
|
| +
|
| def CreateStorySet(self, options):
|
| """Creates the instance of StorySet used to run the benchmark.
|
|
|
| Can be overridden by subclasses.
|
| """
|
| - del options # unused
|
| - # TODO(aiolos, nednguyen, eakufner): replace class attribute page_set with
|
| - # story_set.
|
| - if not hasattr(self, 'page_set'):
|
| - raise NotImplementedError('This test has no "page_set" attribute.')
|
| - return self.page_set()
|
| + return self.CreatePageSet(options)
|
|
|
| @classmethod
|
| def CreateExpectations(cls):
|
|
|