Merge pull request #4987 from blueyed/collect-tbstyle-repr_failure
CollectError.repr_failure: honor explicit tbstyle option
This commit is contained in:
commit
02188e399d
|
@ -0,0 +1 @@
|
|||
``Collector.repr_failure`` respects ``--tbstyle``, but only defaults to ``short`` now (with ``auto``).
|
|
@ -325,7 +325,14 @@ class Collector(Node):
|
|||
if excinfo.errisinstance(self.CollectError):
|
||||
exc = excinfo.value
|
||||
return str(exc.args[0])
|
||||
return self._repr_failure_py(excinfo, style="short")
|
||||
|
||||
# Respect explicit tbstyle option, but default to "short"
|
||||
# (None._repr_failure_py defaults to "long" without "fulltrace" option).
|
||||
tbstyle = self.config.getoption("tbstyle")
|
||||
if tbstyle == "auto":
|
||||
tbstyle = "short"
|
||||
|
||||
return self._repr_failure_py(excinfo, style=tbstyle)
|
||||
|
||||
def _prunetraceback(self, excinfo):
|
||||
if hasattr(self, "fspath"):
|
||||
|
|
|
@ -11,6 +11,7 @@ import py
|
|||
|
||||
import pytest
|
||||
from _pytest.main import _in_venv
|
||||
from _pytest.main import EXIT_INTERRUPTED
|
||||
from _pytest.main import EXIT_NOTESTSCOLLECTED
|
||||
from _pytest.main import Session
|
||||
|
||||
|
@ -1234,3 +1235,20 @@ def test_collect_sub_with_symlinks(use_pkg, testdir):
|
|||
"*2 passed in*",
|
||||
]
|
||||
)
|
||||
|
||||
|
||||
def test_collector_respects_tbstyle(testdir):
|
||||
p1 = testdir.makepyfile("assert 0")
|
||||
result = testdir.runpytest(p1, "--tb=native")
|
||||
assert result.ret == EXIT_INTERRUPTED
|
||||
result.stdout.fnmatch_lines(
|
||||
[
|
||||
"*_ ERROR collecting test_collector_respects_tbstyle.py _*",
|
||||
"Traceback (most recent call last):",
|
||||
' File "*/test_collector_respects_tbstyle.py", line 1, in <module>',
|
||||
" assert 0",
|
||||
"AssertionError: assert 0",
|
||||
"*! Interrupted: 1 errors during collection !*",
|
||||
"*= 1 error in *",
|
||||
]
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue