MCPcopy
hub / github.com/pytest-dev/pytest / __init__

Method __init__

src/_pytest/recwarn.py:266–290  ·  view source on GitHub ↗
(
        self,
        expected_warning: type[Warning] | tuple[type[Warning], ...] = Warning,
        match_expr: str | re.Pattern[str] | None = None,
        *,
        _ispytest: bool = False,
    )

Source from the content-addressed store, hash-verified

264@final
265class WarningsChecker(WarningsRecorder):
266 def __init__(
267 self,
268 expected_warning: type[Warning] | tuple[type[Warning], ...] = Warning,
269 match_expr: str | re.Pattern[str] | None = None,
270 *,
271 _ispytest: bool = False,
272 ) -> None:
273 check_ispytest(_ispytest)
274 super().__init__(_ispytest=True)
275
276 msg = "exceptions must be derived from Warning, not %s"
277 if isinstance(expected_warning, tuple):
278 for exc in expected_warning:
279 if not issubclass(exc, Warning):
280 raise TypeError(msg % type(exc))
281 expected_warning_tup = expected_warning
282 elif isinstance(expected_warning, type) and issubclass(
283 expected_warning, Warning
284 ):
285 expected_warning_tup = (expected_warning,)
286 else:
287 raise TypeError(msg % type(expected_warning))
288
289 self.expected_warning = expected_warning_tup
290 self.match_expr = match_expr
291
292 def matches(self, warning: warnings.WarningMessage) -> bool:
293 assert self.expected_warning is not None

Callers 1

__init__Method · 0.45

Calls 1

check_ispytestFunction · 0.90

Tested by

no test coverage detected