summaryrefslogtreecommitdiffstats
path: root/Tools/Scripts/webkitpy/layout_tests/layout_package/test_results.py
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/Scripts/webkitpy/layout_tests/layout_package/test_results.py')
-rw-r--r--Tools/Scripts/webkitpy/layout_tests/layout_package/test_results.py19
1 files changed, 13 insertions, 6 deletions
diff --git a/Tools/Scripts/webkitpy/layout_tests/layout_package/test_results.py b/Tools/Scripts/webkitpy/layout_tests/layout_package/test_results.py
index 2417fb7..055f65b 100644
--- a/Tools/Scripts/webkitpy/layout_tests/layout_package/test_results.py
+++ b/Tools/Scripts/webkitpy/layout_tests/layout_package/test_results.py
@@ -38,13 +38,14 @@ class TestResult(object):
def loads(str):
return cPickle.loads(str)
- def __init__(self, filename, failures, test_run_time,
- total_time_for_all_diffs, time_for_diffs):
- self.failures = failures
+ def __init__(self, filename, failures=None, test_run_time=None, total_time_for_all_diffs=None, time_for_diffs=None):
self.filename = filename
- self.test_run_time = test_run_time
- self.time_for_diffs = time_for_diffs
- self.total_time_for_all_diffs = total_time_for_all_diffs
+ self.failures = failures or []
+ self.test_run_time = test_run_time or 0
+ self.total_time_for_all_diffs = total_time_for_all_diffs or 0
+ self.time_for_diffs = time_for_diffs or {} # FIXME: Why is this a dictionary?
+
+ # FIXME: Setting this in the constructor makes this class hard to mutate.
self.type = test_failures.determine_result_type(failures)
def __eq__(self, other):
@@ -57,5 +58,11 @@ class TestResult(object):
def __ne__(self, other):
return not (self == other)
+ def has_failure_matching_types(self, types):
+ for failure in self.failures:
+ if type(failure) in types:
+ return True
+ return False
+
def dumps(self):
return cPickle.dumps(self)