1 new commit in pytest: https://bitbucket.org/hpk42/pytest/commits/b1bd58344edd/ Changeset: b1bd58344edd User: hpk42 Date: 2013-11-19 14:19:29 Summary: fix issue380 by making --resultlog only rely on longrepr instead of the "reprcrash" attribute which only exists sometimes. Affected #: 3 files
diff -r 20a35e86eff1895b8eaade96dd6ebb58814d3c8a -r b1bd58344eddcb775617b83e87a74333a1febe84 CHANGELOG --- a/CHANGELOG +++ b/CHANGELOG @@ -5,6 +5,9 @@ since the unittest compat enhancements allow trial to handle it on its own +- fix issue380 by making --resultlog only rely on longrepr instead + of the "reprcrash" attribute which only exists sometimes. + - fix pexpect-3.0 compatibility for pytest's own tests. (fixes issue386) diff -r 20a35e86eff1895b8eaade96dd6ebb58814d3c8a -r b1bd58344eddcb775617b83e87a74333a1febe84 _pytest/resultlog.py --- a/_pytest/resultlog.py +++ b/_pytest/resultlog.py @@ -6,7 +6,7 @@ def pytest_addoption(parser): group = parser.getgroup("terminal reporting", "resultlog plugin options") - group.addoption('--resultlog', '--result-log', action="store", + group.addoption('--resultlog', '--result-log', action="store", metavar="path", default=None, help="path for machine-readable result log.") @@ -85,7 +85,7 @@ if not report.passed: if report.failed: code = "F" - longrepr = str(report.longrepr.reprcrash) + longrepr = str(report.longrepr) else: assert report.skipped code = "S" diff -r 20a35e86eff1895b8eaade96dd6ebb58814d3c8a -r b1bd58344eddcb775617b83e87a74333a1febe84 testing/test_resultlog.py --- a/testing/test_resultlog.py +++ b/testing/test_resultlog.py @@ -195,3 +195,23 @@ pytest_unconfigure(config) assert not hasattr(config, '_resultlog') + +def test_failure_issue380(testdir): + testdir.makeconftest(""" + import pytest + class MyCollector(pytest.File): + def collect(self): + raise ValueError() + def repr_failure(self, excinfo): + return "somestring" + def pytest_collect_file(path, parent): + return MyCollector(parent=parent, fspath=path) + """) + testdir.makepyfile(""" + def test_func(): + pass + """) + result = testdir.runpytest("--resultlog=log") + assert result.ret == 1 + + Repository URL: https://bitbucket.org/hpk42/pytest/ -- This is a commit notification from bitbucket.org. You are receiving this because you have the service enabled, addressing the recipient of this email. _______________________________________________ pytest-commit mailing list pytest-commit@python.org https://mail.python.org/mailman/listinfo/pytest-commit