MCPcopy Create free account
hub / github.com/RustPython/RustPython / TestResults

Class TestResults

Lib/test/libregrtest/results.py:25–309  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

23
24
25class TestResults:
26 def __init__(self) -> None:
27 self.bad: TestList = []
28 self.good: TestList = []
29 self.rerun_bad: TestList = []
30 self.skipped: TestList = []
31 self.resource_denied: TestList = []
32 self.env_changed: TestList = []
33 self.run_no_tests: TestList = []
34 self.rerun: TestList = []
35 self.rerun_results: list[TestResult] = []
36
37 self.interrupted: bool = False
38 self.worker_bug: bool = False
39 self.test_times: list[tuple[float, TestName]] = []
40 self.stats = TestStats()
41 # used by --junit-xml
42 self.testsuite_xml: list['Element'] = []
43 # used by -T with -j
44 self.covered_lines: set[Location] = set()
45
46 def is_all_good(self) -> bool:
47 return (not self.bad
48 and not self.skipped
49 and not self.interrupted
50 and not self.worker_bug)
51
52 def get_executed(self) -> set[TestName]:
53 return (set(self.good) | set(self.bad) | set(self.skipped)
54 | set(self.resource_denied) | set(self.env_changed)
55 | set(self.run_no_tests))
56
57 def no_tests_run(self) -> bool:
58 return not any((self.good, self.bad, self.skipped, self.interrupted,
59 self.env_changed))
60
61 def get_state(self, fail_env_changed: bool) -> str:
62 state = []
63 ansi = get_colors()
64 green = ansi.GREEN
65 red = ansi.BOLD_RED
66 reset = ansi.RESET
67 yellow = ansi.YELLOW
68 if self.bad:
69 state.append(f"{red}FAILURE{reset}")
70 elif fail_env_changed and self.env_changed:
71 state.append(f"{yellow}ENV CHANGED{reset}")
72 elif self.no_tests_run():
73 state.append(f"{yellow}NO TESTS RAN{reset}")
74
75 if self.interrupted:
76 state.append(f"{yellow}INTERRUPTED{reset}")
77 if self.worker_bug:
78 state.append(f"{red}WORKER BUG{reset}")
79 if not state:
80 state.append(f"{green}SUCCESS{reset}")
81
82 return ', '.join(state)

Callers 2

__init__Method · 0.70

Calls

no outgoing calls

Tested by 1