From 65c8e8a09e56acbb992a4cad462f01cfd82617d0 Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Thu, 28 Mar 2019 13:41:56 -0300 Subject: [PATCH] Rename hooks: to/from_serializable --- changelog/4965.trivial.rst | 2 +- src/_pytest/hookspec.py | 6 +++--- src/_pytest/reports.py | 4 ++-- testing/test_reports.py | 12 ++++++------ 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/changelog/4965.trivial.rst b/changelog/4965.trivial.rst index 487a22c7a..36db733f9 100644 --- a/changelog/4965.trivial.rst +++ b/changelog/4965.trivial.rst @@ -1,4 +1,4 @@ -New ``pytest_report_serialize`` and ``pytest_report_unserialize`` **experimental** hooks. +New ``pytest_report_to_serializable`` and ``pytest_report_from_serializable`` **experimental** hooks. These hooks will be used by ``pytest-xdist``, ``pytest-subtests``, and the replacement for resultlog to serialize and customize reports. diff --git a/src/_pytest/hookspec.py b/src/_pytest/hookspec.py index afcee5397..65a7f43ed 100644 --- a/src/_pytest/hookspec.py +++ b/src/_pytest/hookspec.py @@ -376,7 +376,7 @@ def pytest_runtest_logreport(report): @hookspec(firstresult=True) -def pytest_report_serialize(config, report): +def pytest_report_to_serializable(config, report): """ .. warning:: This hook is experimental and subject to change between pytest releases, even @@ -394,7 +394,7 @@ def pytest_report_serialize(config, report): @hookspec(firstresult=True) -def pytest_report_unserialize(config, data): +def pytest_report_from_serializable(config, data): """ .. warning:: This hook is experimental and subject to change between pytest releases, even @@ -406,7 +406,7 @@ def pytest_report_unserialize(config, data): In the future it might become part of the public hook API. - Restores a report object previously serialized with pytest_report_serialize(). + Restores a report object previously serialized with pytest_report_to_serializable(). """ diff --git a/src/_pytest/reports.py b/src/_pytest/reports.py index 679d72c9d..d2df4d21f 100644 --- a/src/_pytest/reports.py +++ b/src/_pytest/reports.py @@ -409,14 +409,14 @@ class CollectErrorRepr(TerminalRepr): out.line(self.longrepr, red=True) -def pytest_report_serialize(report): +def pytest_report_to_serializable(report): if isinstance(report, (TestReport, CollectReport)): data = report._to_json() data["_report_type"] = report.__class__.__name__ return data -def pytest_report_unserialize(data): +def pytest_report_from_serializable(data): if "_report_type" in data: if data["_report_type"] == "TestReport": return TestReport._from_json(data) diff --git a/testing/test_reports.py b/testing/test_reports.py index 22d5fce34..6d2b167f8 100644 --- a/testing/test_reports.py +++ b/testing/test_reports.py @@ -257,11 +257,11 @@ class TestHooks: reports = reprec.getreports("pytest_runtest_logreport") assert len(reports) == 6 for rep in reports: - data = pytestconfig.hook.pytest_report_serialize( + data = pytestconfig.hook.pytest_report_to_serializable( config=pytestconfig, report=rep ) assert data["_report_type"] == "TestReport" - new_rep = pytestconfig.hook.pytest_report_unserialize( + new_rep = pytestconfig.hook.pytest_report_from_serializable( config=pytestconfig, data=data ) assert new_rep.nodeid == rep.nodeid @@ -279,11 +279,11 @@ class TestHooks: reports = reprec.getreports("pytest_collectreport") assert len(reports) == 2 for rep in reports: - data = pytestconfig.hook.pytest_report_serialize( + data = pytestconfig.hook.pytest_report_to_serializable( config=pytestconfig, report=rep ) assert data["_report_type"] == "CollectReport" - new_rep = pytestconfig.hook.pytest_report_unserialize( + new_rep = pytestconfig.hook.pytest_report_from_serializable( config=pytestconfig, data=data ) assert new_rep.nodeid == rep.nodeid @@ -303,11 +303,11 @@ class TestHooks: reports = reprec.getreports(hook_name) assert reports rep = reports[0] - data = pytestconfig.hook.pytest_report_serialize( + data = pytestconfig.hook.pytest_report_to_serializable( config=pytestconfig, report=rep ) data["_report_type"] = "Unknown" with pytest.raises(AssertionError): - _ = pytestconfig.hook.pytest_report_unserialize( + _ = pytestconfig.hook.pytest_report_from_serializable( config=pytestconfig, data=data )