Skip to content

Commit de74a27

Browse files
committed
fix circular imports
1 parent fe050cd commit de74a27

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

src/_pytest/compat.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,6 @@
2525

2626
import _pytest
2727
from _pytest._io.saferepr import saferepr
28-
from _pytest.outcomes import fail
29-
from _pytest.outcomes import TEST_OUTCOME
3028

3129
if sys.version_info < (3, 5, 2):
3230
from typing_extensions import TYPE_CHECKING
@@ -154,6 +152,8 @@ def getfuncargnames(
154152
try:
155153
parameters = signature(function).parameters
156154
except (ValueError, TypeError) as e:
155+
from _pytest.outcomes import fail
156+
157157
fail(
158158
"Could not determine arguments of {!r}: {}".format(function, e),
159159
pytrace=False,
@@ -332,8 +332,12 @@ def safe_getattr(object: Any, name: str, default: Any) -> Any:
332332
"""
333333
try:
334334
return getattr(object, name, default)
335-
except TEST_OUTCOME:
336-
return default
335+
except BaseException as exc:
336+
from _pytest.outcomes import TEST_OUTCOME
337+
338+
if isinstance(exc, TEST_OUTCOME):
339+
return default
340+
raise
337341

338342

339343
def safe_isclass(obj: object) -> bool:

0 commit comments

Comments
 (0)