(
self,
which_reports: str,
sep_title: str,
*,
style: str,
needed_opt: str | None = None,
)
| 1196 | self.summary_failures_combined("xfailed", "XFAILURES", style=style) |
| 1197 | |
| 1198 | def summary_failures_combined( |
| 1199 | self, |
| 1200 | which_reports: str, |
| 1201 | sep_title: str, |
| 1202 | *, |
| 1203 | style: str, |
| 1204 | needed_opt: str | None = None, |
| 1205 | ) -> None: |
| 1206 | if style != "no": |
| 1207 | if not needed_opt or self.hasopt(needed_opt): |
| 1208 | reports: list[BaseReport] = self.getreports(which_reports) |
| 1209 | if not reports: |
| 1210 | return |
| 1211 | self.write_sep("=", sep_title) |
| 1212 | if style == "line": |
| 1213 | for rep in reports: |
| 1214 | line = self._getcrashline(rep) |
| 1215 | self._outrep_summary(rep) |
| 1216 | self.write_line(line) |
| 1217 | else: |
| 1218 | for rep in reports: |
| 1219 | msg = self._getfailureheadline(rep) |
| 1220 | self.write_sep("_", msg, red=True, bold=True) |
| 1221 | self._outrep_summary(rep) |
| 1222 | self._handle_teardown_sections(rep.nodeid) |
| 1223 | |
| 1224 | def summary_errors(self) -> None: |
| 1225 | if self.config.option.tbstyle != "no": |
no test coverage detected