| Index: tools/telemetry/telemetry/results/page_test_results.py
|
| diff --git a/tools/telemetry/telemetry/results/page_test_results.py b/tools/telemetry/telemetry/results/page_test_results.py
|
| index 676e003414de3f2f5ddecf2d26540316287d4189..4353563885701d64d736fa933dfc5889fa343a49 100644
|
| --- a/tools/telemetry/telemetry/results/page_test_results.py
|
| +++ b/tools/telemetry/telemetry/results/page_test_results.py
|
| @@ -4,6 +4,8 @@
|
|
|
| import collections
|
| import copy
|
| +import itertools
|
| +import os
|
| import traceback
|
|
|
| from telemetry import value as value_module
|
| @@ -66,6 +68,12 @@ class PageTestResults(object):
|
| return self._all_summary_values
|
|
|
| @property
|
| + def all_values(self):
|
| + return itertools.chain(
|
| + self.all_page_specific_values,
|
| + self.all_summary_values)
|
| +
|
| + @property
|
| def current_page(self):
|
| assert self._current_page_run, 'Not currently running test.'
|
| return self._current_page_run.page
|
| @@ -96,6 +104,21 @@ class PageTestResults(object):
|
| return failed_pages
|
|
|
| @property
|
| + def all_paths(self):
|
| + """Returns the set of all paths to referenced files.
|
| +
|
| + Since we are dealing with paths, and paths are not necessarily unique even
|
| + if they refer to the same file, we canonicalize paths using
|
| + os.path.normcase and os.path.realpath before adding them to the set that we
|
| + return.
|
| + """
|
| + paths = set()
|
| + for v in self.all_values:
|
| + paths.update(os.path.normcase(os.path.realpath(path)) for path in v.paths)
|
| +
|
| + return paths
|
| +
|
| + @property
|
| def failures(self):
|
| values = self.all_page_specific_values
|
| return [v for v in values if isinstance(v, failure.FailureValue)]
|
|
|