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

Side by Side Diff: Tools/Scripts/webkitpy/layout_tests/models/test_failures.py

Issue 148153009: DOM-object leak detection at run_webkit_tests.py (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Bug fix: unit test Created 6 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # Copyright (C) 2010 Google Inc. All rights reserved. 1 # Copyright (C) 2010 Google Inc. All rights reserved.
2 # 2 #
3 # Redistribution and use in source and binary forms, with or without 3 # Redistribution and use in source and binary forms, with or without
4 # modification, are permitted provided that the following conditions are 4 # modification, are permitted provided that the following conditions are
5 # met: 5 # met:
6 # 6 #
7 # * Redistributions of source code must retain the above copyright 7 # * Redistributions of source code must retain the above copyright
8 # notice, this list of conditions and the following disclaimer. 8 # notice, this list of conditions and the following disclaimer.
9 # * Redistributions in binary form must reproduce the above 9 # * Redistributions in binary form must reproduce the above
10 # copyright notice, this list of conditions and the following disclaimer 10 # copyright notice, this list of conditions and the following disclaimer
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 44
45 Returns: 45 Returns:
46 one of the test_expectations result types - PASS, FAIL, CRASH, etc.""" 46 one of the test_expectations result types - PASS, FAIL, CRASH, etc."""
47 47
48 if not failure_list or len(failure_list) == 0: 48 if not failure_list or len(failure_list) == 0:
49 return test_expectations.PASS 49 return test_expectations.PASS
50 50
51 failure_types = [type(f) for f in failure_list] 51 failure_types = [type(f) for f in failure_list]
52 if FailureCrash in failure_types: 52 if FailureCrash in failure_types:
53 return test_expectations.CRASH 53 return test_expectations.CRASH
54 elif FailureLeak in failure_types:
55 return test_expectations.LEAK
54 elif FailureTimeout in failure_types: 56 elif FailureTimeout in failure_types:
55 return test_expectations.TIMEOUT 57 return test_expectations.TIMEOUT
56 elif FailureEarlyExit in failure_types: 58 elif FailureEarlyExit in failure_types:
57 return test_expectations.SKIP 59 return test_expectations.SKIP
58 elif (FailureMissingResult in failure_types or 60 elif (FailureMissingResult in failure_types or
59 FailureMissingImage in failure_types or 61 FailureMissingImage in failure_types or
60 FailureMissingImageHash in failure_types or 62 FailureMissingImageHash in failure_types or
61 FailureMissingAudio in failure_types): 63 FailureMissingAudio in failure_types):
62 return test_expectations.MISSING 64 return test_expectations.MISSING
63 else: 65 else:
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 132
131 def message(self): 133 def message(self):
132 if self.pid: 134 if self.pid:
133 return "%s crashed [pid=%d]" % (self.process_name, self.pid) 135 return "%s crashed [pid=%d]" % (self.process_name, self.pid)
134 return self.process_name + " crashed" 136 return self.process_name + " crashed"
135 137
136 def driver_needs_restart(self): 138 def driver_needs_restart(self):
137 return True 139 return True
138 140
139 141
142 class FailureLeak(TestFailure):
143 def __init__(self, is_reftest=False, log=''):
144 super(FailureLeak, self).__init__()
145 self.is_reftest = is_reftest
146 self.log = log
147
148 def message(self):
149 return "leak detected: %s" % (self.log)
150
151
140 class FailureMissingResult(TestFailure): 152 class FailureMissingResult(TestFailure):
141 def message(self): 153 def message(self):
142 return "-expected.txt was missing" 154 return "-expected.txt was missing"
143 155
144 156
145 class FailureTestHarnessAssertion(TestFailure): 157 class FailureTestHarnessAssertion(TestFailure):
146 def message(self): 158 def message(self):
147 return "asserts failed" 159 return "asserts failed"
148 160
149 161
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
217 # Convenient collection of all failure classes for anything that might 229 # Convenient collection of all failure classes for anything that might
218 # need to enumerate over them all. 230 # need to enumerate over them all.
219 ALL_FAILURE_CLASSES = (FailureTimeout, FailureCrash, FailureMissingResult, 231 ALL_FAILURE_CLASSES = (FailureTimeout, FailureCrash, FailureMissingResult,
220 FailureTestHarnessAssertion, 232 FailureTestHarnessAssertion,
221 FailureTextMismatch, FailureMissingImageHash, 233 FailureTextMismatch, FailureMissingImageHash,
222 FailureMissingImage, FailureImageHashMismatch, 234 FailureMissingImage, FailureImageHashMismatch,
223 FailureImageHashIncorrect, FailureReftestMismatch, 235 FailureImageHashIncorrect, FailureReftestMismatch,
224 FailureReftestMismatchDidNotOccur, FailureReftestNoImages Generated, 236 FailureReftestMismatchDidNotOccur, FailureReftestNoImages Generated,
225 FailureMissingAudio, FailureAudioMismatch, 237 FailureMissingAudio, FailureAudioMismatch,
226 FailureEarlyExit) 238 FailureEarlyExit)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698