MCPcopy Create free account
hub / github.com/RT-Thread/env-windows / run

Method run

tools/python-3.11.9-amd64/Lib/unittest/runner.py:192–263  ·  view source on GitHub ↗

Run the given test case or test suite.

(self, test)

Source from the content-addressed store, hash-verified

190 return self.resultclass(self.stream, self.descriptions, self.verbosity)
191
192 def run(self, test):
193 "Run the given test case or test suite."
194 result = self._makeResult()
195 registerResult(result)
196 result.failfast = self.failfast
197 result.buffer = self.buffer
198 result.tb_locals = self.tb_locals
199 with warnings.catch_warnings():
200 if self.warnings:
201 # if self.warnings is set, use it to filter all the warnings
202 warnings.simplefilter(self.warnings)
203 # if the filter is 'default' or 'always', special-case the
204 # warnings from the deprecated unittest methods to show them
205 # no more than once per module, because they can be fairly
206 # noisy. The -Wd and -Wa flags can be used to bypass this
207 # only when self.warnings is None.
208 if self.warnings in ['default', 'always']:
209 warnings.filterwarnings('module',
210 category=DeprecationWarning,
211 message=r'Please use assert\w+ instead.')
212 startTime = time.perf_counter()
213 startTestRun = getattr(result, 'startTestRun', None)
214 if startTestRun is not None:
215 startTestRun()
216 try:
217 test(result)
218 finally:
219 stopTestRun = getattr(result, 'stopTestRun', None)
220 if stopTestRun is not None:
221 stopTestRun()
222 stopTime = time.perf_counter()
223 timeTaken = stopTime - startTime
224 result.printErrors()
225 if hasattr(result, 'separator2'):
226 self.stream.writeln(result.separator2)
227 run = result.testsRun
228 self.stream.writeln("Ran %d test%s in %.3fs" %
229 (run, run != 1 and "s" or "", timeTaken))
230 self.stream.writeln()
231
232 expectedFails = unexpectedSuccesses = skipped = 0
233 try:
234 results = map(len, (result.expectedFailures,
235 result.unexpectedSuccesses,
236 result.skipped))
237 except AttributeError:
238 pass
239 else:
240 expectedFails, unexpectedSuccesses, skipped = results
241
242 infos = []
243 if not result.wasSuccessful():
244 self.stream.write("FAILED")
245 failed, errored = len(result.failures), len(result.errors)
246 if failed:
247 infos.append("failures=%d" % failed)
248 if errored:
249 infos.append("errors=%d" % errored)

Callers 6

testRunnerMethod · 0.95
testBufferAndFailfastMethod · 0.95
test_localsMethod · 0.95

Calls 11

_makeResultMethod · 0.95
registerResultFunction · 0.85
testFunction · 0.50
mapFunction · 0.50
printErrorsMethod · 0.45
writelnMethod · 0.45
wasSuccessfulMethod · 0.45
writeMethod · 0.45
appendMethod · 0.45
joinMethod · 0.45
flushMethod · 0.45

Tested by 6

testRunnerMethod · 0.76
testBufferAndFailfastMethod · 0.76
test_localsMethod · 0.76