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

Side by Side Diff: tools/testrunner/local/testsuite.py

Issue 1802983002: [test] Remove feature to mark flaky tests. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 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
« no previous file with comments | « tools/testrunner/local/statusfile.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2012 the V8 project authors. All rights reserved. 1 # Copyright 2012 the V8 project authors. All rights reserved.
2 # Redistribution and use in source and binary forms, with or without 2 # Redistribution and use in source and binary forms, with or without
3 # modification, are permitted provided that the following conditions are 3 # modification, are permitted provided that the following conditions are
4 # met: 4 # met:
5 # 5 #
6 # * Redistributions of source code must retain the above copyright 6 # * Redistributions of source code must retain the above copyright
7 # notice, this list of conditions and the following disclaimer. 7 # notice, this list of conditions and the following disclaimer.
8 # * Redistributions in binary form must reproduce the above 8 # * Redistributions in binary form must reproduce the above
9 # copyright notice, this list of conditions and the following 9 # copyright notice, this list of conditions and the following
10 # disclaimer in the documentation and/or other materials provided 10 # disclaimer in the documentation and/or other materials provided
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 pass 146 pass
147 147
148 def ReadStatusFile(self, variables): 148 def ReadStatusFile(self, variables):
149 (self.rules, self.wildcards) = \ 149 (self.rules, self.wildcards) = \
150 statusfile.ReadStatusFile(self.status_file(), variables) 150 statusfile.ReadStatusFile(self.status_file(), variables)
151 151
152 def ReadTestCases(self, context): 152 def ReadTestCases(self, context):
153 self.tests = self.ListTests(context) 153 self.tests = self.ListTests(context)
154 154
155 @staticmethod 155 @staticmethod
156 def _FilterFlaky(flaky, mode):
157 return (mode == "run" and not flaky) or (mode == "skip" and flaky)
158
159 @staticmethod
160 def _FilterSlow(slow, mode): 156 def _FilterSlow(slow, mode):
161 return (mode == "run" and not slow) or (mode == "skip" and slow) 157 return (mode == "run" and not slow) or (mode == "skip" and slow)
162 158
163 @staticmethod 159 @staticmethod
164 def _FilterPassFail(pass_fail, mode): 160 def _FilterPassFail(pass_fail, mode):
165 return (mode == "run" and not pass_fail) or (mode == "skip" and pass_fail) 161 return (mode == "run" and not pass_fail) or (mode == "skip" and pass_fail)
166 162
167 def FilterTestCasesByStatus(self, warn_unused_rules, 163 def FilterTestCasesByStatus(self, warn_unused_rules,
168 flaky_tests="dontcare",
169 slow_tests="dontcare", 164 slow_tests="dontcare",
170 pass_fail_tests="dontcare"): 165 pass_fail_tests="dontcare"):
171 filtered = [] 166 filtered = []
172 used_rules = set() 167 used_rules = set()
173 for t in self.tests: 168 for t in self.tests:
174 flaky = False
175 slow = False 169 slow = False
176 pass_fail = False 170 pass_fail = False
177 testname = self.CommonTestName(t) 171 testname = self.CommonTestName(t)
178 if testname in self.rules: 172 if testname in self.rules:
179 used_rules.add(testname) 173 used_rules.add(testname)
180 # Even for skipped tests, as the TestCase object stays around and 174 # Even for skipped tests, as the TestCase object stays around and
181 # PrintReport() uses it. 175 # PrintReport() uses it.
182 t.outcomes = self.rules[testname] 176 t.outcomes = self.rules[testname]
183 if statusfile.DoSkip(t.outcomes): 177 if statusfile.DoSkip(t.outcomes):
184 continue # Don't add skipped tests to |filtered|. 178 continue # Don't add skipped tests to |filtered|.
185 for outcome in t.outcomes: 179 for outcome in t.outcomes:
186 if outcome.startswith('Flags: '): 180 if outcome.startswith('Flags: '):
187 t.flags += outcome[7:].split() 181 t.flags += outcome[7:].split()
188 flaky = statusfile.IsFlaky(t.outcomes)
189 slow = statusfile.IsSlow(t.outcomes) 182 slow = statusfile.IsSlow(t.outcomes)
190 pass_fail = statusfile.IsPassOrFail(t.outcomes) 183 pass_fail = statusfile.IsPassOrFail(t.outcomes)
191 skip = False 184 skip = False
192 for rule in self.wildcards: 185 for rule in self.wildcards:
193 assert rule[-1] == '*' 186 assert rule[-1] == '*'
194 if testname.startswith(rule[:-1]): 187 if testname.startswith(rule[:-1]):
195 used_rules.add(rule) 188 used_rules.add(rule)
196 t.outcomes |= self.wildcards[rule] 189 t.outcomes |= self.wildcards[rule]
197 if statusfile.DoSkip(t.outcomes): 190 if statusfile.DoSkip(t.outcomes):
198 skip = True 191 skip = True
199 break # "for rule in self.wildcards" 192 break # "for rule in self.wildcards"
200 flaky = flaky or statusfile.IsFlaky(t.outcomes)
201 slow = slow or statusfile.IsSlow(t.outcomes) 193 slow = slow or statusfile.IsSlow(t.outcomes)
202 pass_fail = pass_fail or statusfile.IsPassOrFail(t.outcomes) 194 pass_fail = pass_fail or statusfile.IsPassOrFail(t.outcomes)
203 if (skip or self._FilterFlaky(flaky, flaky_tests) 195 if (skip
204 or self._FilterSlow(slow, slow_tests) 196 or self._FilterSlow(slow, slow_tests)
205 or self._FilterPassFail(pass_fail, pass_fail_tests)): 197 or self._FilterPassFail(pass_fail, pass_fail_tests)):
206 continue # "for t in self.tests" 198 continue # "for t in self.tests"
207 filtered.append(t) 199 filtered.append(t)
208 self.tests = filtered 200 self.tests = filtered
209 201
210 if not warn_unused_rules: 202 if not warn_unused_rules:
211 return 203 return
212 204
213 for rule in self.rules: 205 for rule in self.rules:
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
331 return (testcase.flags + ["--gtest_filter=" + testcase.path] + 323 return (testcase.flags + ["--gtest_filter=" + testcase.path] +
332 ["--gtest_random_seed=%s" % context.random_seed] + 324 ["--gtest_random_seed=%s" % context.random_seed] +
333 ["--gtest_print_time=0"] + 325 ["--gtest_print_time=0"] +
334 context.mode_flags) 326 context.mode_flags)
335 327
336 def _VariantGeneratorFactory(self): 328 def _VariantGeneratorFactory(self):
337 return StandardVariantGenerator 329 return StandardVariantGenerator
338 330
339 def shell(self): 331 def shell(self):
340 return self.name 332 return self.name
OLDNEW
« no previous file with comments | « tools/testrunner/local/statusfile.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698