parent
063e2da967
commit
6496131b79
|
@ -361,6 +361,7 @@ class TerminalReporter(object):
|
|||
|
||||
errors = len(self.stats.get('error', []))
|
||||
skipped = len(self.stats.get('skipped', []))
|
||||
deselected = len(self.stats.get('deselected', []))
|
||||
if final:
|
||||
line = "collected "
|
||||
else:
|
||||
|
@ -368,6 +369,8 @@ class TerminalReporter(object):
|
|||
line += str(self._numcollected) + " item" + ('' if self._numcollected == 1 else 's')
|
||||
if errors:
|
||||
line += " / %d errors" % errors
|
||||
if deselected:
|
||||
line += " / %d deselected" % deselected
|
||||
if skipped:
|
||||
line += " / %d skipped" % skipped
|
||||
if self.isatty:
|
||||
|
@ -377,6 +380,7 @@ class TerminalReporter(object):
|
|||
else:
|
||||
self.write_line(line)
|
||||
|
||||
@pytest.hookimpl(trylast=True)
|
||||
def pytest_collection_modifyitems(self):
|
||||
self.report_collect(True)
|
||||
|
||||
|
@ -484,7 +488,6 @@ class TerminalReporter(object):
|
|||
if exitstatus == EXIT_INTERRUPTED:
|
||||
self._report_keyboardinterrupt()
|
||||
del self._keyboardinterrupt_memo
|
||||
self.summary_deselected()
|
||||
self.summary_stats()
|
||||
|
||||
def pytest_keyboard_interrupt(self, excinfo):
|
||||
|
@ -649,11 +652,6 @@ class TerminalReporter(object):
|
|||
if self.verbosity == -1:
|
||||
self.write_line(msg, **markup)
|
||||
|
||||
def summary_deselected(self):
|
||||
if 'deselected' in self.stats:
|
||||
self.write_sep("=", "%d tests deselected" % (
|
||||
len(self.stats['deselected'])), bold=True)
|
||||
|
||||
|
||||
def repr_pythonversion(v=None):
|
||||
if v is None:
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Output item deselection count before tests are run.
|
|
@ -361,7 +361,7 @@ class TestLastFailed(object):
|
|||
|
||||
result = testdir.runpytest('--lf')
|
||||
result.stdout.fnmatch_lines([
|
||||
'collected 4 items',
|
||||
'collected 4 items / 2 deselected',
|
||||
'run-last-failure: rerun previous 2 failures',
|
||||
'*2 failed, 2 deselected in*',
|
||||
])
|
||||
|
|
|
@ -431,11 +431,36 @@ class TestTerminalFunctional(object):
|
|||
)
|
||||
result = testdir.runpytest("-k", "test_two:", testpath)
|
||||
result.stdout.fnmatch_lines([
|
||||
"collected 3 items / 1 deselected",
|
||||
"*test_deselected.py ..*",
|
||||
"=* 1 test*deselected *=",
|
||||
])
|
||||
assert result.ret == 0
|
||||
|
||||
def test_show_deselected_items_using_markexpr_before_test_execution(
|
||||
self, testdir):
|
||||
testdir.makepyfile("""
|
||||
import pytest
|
||||
|
||||
@pytest.mark.foo
|
||||
def test_foobar():
|
||||
pass
|
||||
|
||||
@pytest.mark.bar
|
||||
def test_bar():
|
||||
pass
|
||||
|
||||
def test_pass():
|
||||
pass
|
||||
""")
|
||||
result = testdir.runpytest('-m', 'not foo')
|
||||
result.stdout.fnmatch_lines([
|
||||
"collected 3 items / 1 deselected",
|
||||
"*test_show_des*.py ..*",
|
||||
"*= 2 passed, 1 deselected in * =*",
|
||||
])
|
||||
assert "= 1 deselected =" not in result.stdout.str()
|
||||
assert result.ret == 0
|
||||
|
||||
def test_no_skip_summary_if_failure(self, testdir):
|
||||
testdir.makepyfile("""
|
||||
import pytest
|
||||
|
|
Loading…
Reference in New Issue