From dc2080f3be9a75830074989078006752cf150ac5 Mon Sep 17 00:00:00 2001 From: Thomas Grainger Date: Thu, 19 Oct 2023 18:10:41 +0100 Subject: [PATCH] gh-11523: add importorskip(exc=...) kwarg Fixes #11523 --- src/_pytest/outcomes.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/_pytest/outcomes.py b/src/_pytest/outcomes.py index a8984c5b9..491c6b229 100644 --- a/src/_pytest/outcomes.py +++ b/src/_pytest/outcomes.py @@ -249,7 +249,8 @@ def xfail(reason: str = "") -> NoReturn: def importorskip( - modname: str, minversion: Optional[str] = None, reason: Optional[str] = None + modname: str, minversion: Optional[str] = None, reason: Optional[str] = None, + exc: type[ImportError] = ImportError, ) -> Any: """Import and return the requested module ``modname``, or skip the current test if the module cannot be imported. @@ -282,9 +283,9 @@ def importorskip( warnings.simplefilter("ignore") try: __import__(modname) - except ImportError as exc: + except exc as e: if reason is None: - reason = f"could not import {modname!r}: {exc}" + reason = f"could not import {modname!r}: {e}" raise Skipped(reason, allow_module_level=True) from None mod = sys.modules[modname] if minversion is None: