parent
d5031769b6
commit
ebebda43dd
|
@ -96,7 +96,7 @@ class HTMLReport(object):
|
|||
|
||||
def __init__(self, outcome, report, logfile, config):
|
||||
self.test_id = report.nodeid
|
||||
if report.when != 'call':
|
||||
if getattr(report, 'when', 'call') != 'call':
|
||||
self.test_id = '::'.join([report.nodeid, report.when])
|
||||
self.time = getattr(report, 'duration', 0.0)
|
||||
self.outcome = outcome
|
||||
|
@ -277,7 +277,7 @@ class HTMLReport(object):
|
|||
self._appendrow('Passed', report)
|
||||
|
||||
def append_failed(self, report):
|
||||
if report.when == "call":
|
||||
if getattr(report, 'when', None) == "call":
|
||||
if hasattr(report, "wasxfail"):
|
||||
# pytest < 3.0 marked xpasses as failures
|
||||
self.xpassed += 1
|
||||
|
@ -487,6 +487,10 @@ class HTMLReport(object):
|
|||
else:
|
||||
self.append_other(report)
|
||||
|
||||
def pytest_collectreport(self, report):
|
||||
if report.failed:
|
||||
self.append_failed(report)
|
||||
|
||||
def pytest_sessionstart(self, session):
|
||||
self.suite_start_time = time.time()
|
||||
|
||||
|
|
|
@ -616,3 +616,14 @@ class TestHTML:
|
|||
result, html = run(testdir, 'report.html', '--self-contained-html')
|
||||
assert result.ret
|
||||
assert 'utf8 longrepr' in html
|
||||
|
||||
def test_collect_error(self, testdir):
|
||||
testdir.makepyfile("""
|
||||
import xyz
|
||||
def test_pass(): pass
|
||||
""")
|
||||
result, html = run(testdir)
|
||||
assert result.ret
|
||||
assert_results(html, tests=0, passed=0, errors=1)
|
||||
regex_error = '(Import|ModuleNotFound)Error: No module named .*xyz'
|
||||
assert re.search(regex_error, html) is not None
|
||||
|
|
Loading…
Reference in New Issue