Improve coverage for _report_unserialization_failure
This commit is contained in:
parent
ceef0af1ae
commit
2d77018d1b
|
@ -1,3 +1,5 @@
|
||||||
|
from pprint import pprint
|
||||||
|
|
||||||
import py
|
import py
|
||||||
import six
|
import six
|
||||||
|
|
||||||
|
@ -258,8 +260,6 @@ class BaseReport(object):
|
||||||
|
|
||||||
|
|
||||||
def _report_unserialization_failure(type_name, report_class, reportdict):
|
def _report_unserialization_failure(type_name, report_class, reportdict):
|
||||||
from pprint import pprint
|
|
||||||
|
|
||||||
url = "https://github.com/pytest-dev/pytest/issues"
|
url = "https://github.com/pytest-dev/pytest/issues"
|
||||||
stream = py.io.TextIO()
|
stream = py.io.TextIO()
|
||||||
pprint("-" * 100, stream=stream)
|
pprint("-" * 100, stream=stream)
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
import pytest
|
||||||
from _pytest.pathlib import Path
|
from _pytest.pathlib import Path
|
||||||
from _pytest.reports import CollectReport
|
from _pytest.reports import CollectReport
|
||||||
from _pytest.reports import TestReport
|
from _pytest.reports import TestReport
|
||||||
|
@ -219,6 +220,28 @@ class TestReportSerialization(object):
|
||||||
assert data["path1"] == str(testdir.tmpdir)
|
assert data["path1"] == str(testdir.tmpdir)
|
||||||
assert data["path2"] == str(testdir.tmpdir)
|
assert data["path2"] == str(testdir.tmpdir)
|
||||||
|
|
||||||
|
def test_unserialization_failure(self, testdir):
|
||||||
|
"""Check handling of failure during unserialization of report types."""
|
||||||
|
testdir.makepyfile(
|
||||||
|
"""
|
||||||
|
def test_a():
|
||||||
|
assert False
|
||||||
|
"""
|
||||||
|
)
|
||||||
|
reprec = testdir.inline_run()
|
||||||
|
reports = reprec.getreports("pytest_runtest_logreport")
|
||||||
|
assert len(reports) == 3
|
||||||
|
test_a_call = reports[1]
|
||||||
|
data = test_a_call._to_json()
|
||||||
|
entry = data["longrepr"]["reprtraceback"]["reprentries"][0]
|
||||||
|
assert entry["type"] == "ReprEntry"
|
||||||
|
|
||||||
|
entry["type"] = "Unknown"
|
||||||
|
with pytest.raises(
|
||||||
|
RuntimeError, match="INTERNALERROR: Unknown entry type returned: Unknown"
|
||||||
|
):
|
||||||
|
TestReport._from_json(data)
|
||||||
|
|
||||||
|
|
||||||
class TestHooks:
|
class TestHooks:
|
||||||
"""Test that the hooks are working correctly for plugins"""
|
"""Test that the hooks are working correctly for plugins"""
|
||||||
|
|
Loading…
Reference in New Issue