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

Unified Diff: trunk/src/tools/telemetry/telemetry/results/page_test_results.py

Issue 393713005: Revert 284459 "Add FailureValue and wire it through PageTestResu..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 5 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
Index: trunk/src/tools/telemetry/telemetry/results/page_test_results.py
===================================================================
--- trunk/src/tools/telemetry/telemetry/results/page_test_results.py (revision 284496)
+++ trunk/src/tools/telemetry/telemetry/results/page_test_results.py (working copy)
@@ -5,18 +5,18 @@
import collections
import copy
import logging
+import sys
import traceback
from telemetry import value as value_module
-from telemetry.value import failure
class PageTestResults(object):
def __init__(self, output_stream=None):
super(PageTestResults, self).__init__()
self._output_stream = output_stream
- # TODO(chrishenry,eakuefner): Remove self.successes once they can
- # be inferred.
+ self.pages_that_had_failures = set()
self.successes = []
+ self.failures = []
self.skipped = []
self._representative_value_for_each_value_name = {}
@@ -44,17 +44,8 @@
def pages_that_succeeded(self):
pages = set([value.page for value in self._all_page_specific_values])
pages.difference_update(self.pages_that_had_failures)
- return list(pages)
+ return pages
- @property
- def pages_that_had_failures(self):
- return list(set([v.page for v in self.failures]))
-
- @property
- def failures(self):
- values = self._all_page_specific_values
- return [v for v in values if isinstance(v, failure.FailureValue)]
-
def _GetStringFromExcInfo(self, err):
return ''.join(traceback.format_exception(*err))
@@ -65,15 +56,15 @@
pass
def AddValue(self, value):
- self._ValidateValue(value)
+ self.ValidateValue(value)
self._all_page_specific_values.append(value)
def AddSummaryValue(self, value):
assert value.page is None
- self._ValidateValue(value)
+ self.ValidateValue(value)
self._all_summary_values.append(value)
- def _ValidateValue(self, value):
+ def ValidateValue(self, value):
assert isinstance(value, value_module.Value)
if value.name not in self._representative_value_for_each_value_name:
self._representative_value_for_each_value_name[value.name] = value
@@ -81,16 +72,26 @@
value.name]
assert value.IsMergableWith(representative_value)
+ def AddFailure(self, page, err):
+ self.pages_that_had_failures.add(page)
+ self.failures.append((page, self._GetStringFromExcInfo(err)))
+
def AddSkip(self, page, reason):
self.skipped.append((page, reason))
def AddSuccess(self, page):
self.successes.append(page)
+ def AddFailureMessage(self, page, message):
+ try:
+ raise Exception(message)
+ except Exception:
+ self.AddFailure(page, sys.exc_info())
+
def PrintSummary(self):
if self.failures:
logging.error('Failed pages:\n%s', '\n'.join(
- p.display_name for p in self.pages_that_had_failures))
+ p.display_name for p in zip(*self.failures)[0]))
if self.skipped:
logging.warning('Skipped pages:\n%s', '\n'.join(

Powered by Google App Engine
This is Rietveld 408576698