diff options
author | Bruno Oliveira <bruno@esss.com.br> | 2020-02-11 10:32:18 -0300 |
---|---|---|
committer | Bruno Oliveira <nicoddemus@gmail.com> | 2020-02-11 19:22:28 -0300 |
commit | 78baa7b575c11e359381dfe5a756bb51f4f87d8e (patch) | |
tree | af1222b38276a398f053abbb594af9d003c7928c /src/_pytest/assertion | |
parent | 7484e346f9dd3cd42800e18859f2dcfaddb1c685 (diff) | |
parent | 0ee007ca33253758348e51130a7a2f9d92e31f1f (diff) | |
download | pytest-78baa7b575c11e359381dfe5a756bb51f4f87d8e.tar.gz |
Merge remote-tracking branch 'upstream/master' into mm
Conflicts:
src/_pytest/main.py
src/_pytest/mark/structures.py
src/_pytest/python.py
testing/test_main.py
testing/test_parseopt.py
Diffstat (limited to 'src/_pytest/assertion')
-rw-r--r-- | src/_pytest/assertion/__init__.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/_pytest/assertion/__init__.py b/src/_pytest/assertion/__init__.py index a060723a7..cdb034703 100644 --- a/src/_pytest/assertion/__init__.py +++ b/src/_pytest/assertion/__init__.py @@ -8,6 +8,7 @@ from _pytest.assertion import rewrite from _pytest.assertion import truncate from _pytest.assertion import util from _pytest.compat import TYPE_CHECKING +from _pytest.config import hookimpl if TYPE_CHECKING: from _pytest.main import Session @@ -105,7 +106,8 @@ def pytest_collection(session: "Session") -> None: assertstate.hook.set_session(session) -def pytest_runtest_setup(item): +@hookimpl(tryfirst=True, hookwrapper=True) +def pytest_runtest_protocol(item): """Setup the pytest_assertrepr_compare and pytest_assertion_pass hooks The newinterpret and rewrite modules will use util._reprcompare if @@ -143,6 +145,7 @@ def pytest_runtest_setup(item): return res return None + saved_assert_hooks = util._reprcompare, util._assertion_pass util._reprcompare = callbinrepr if item.ihook.pytest_assertion_pass.get_hookimpls(): @@ -154,10 +157,9 @@ def pytest_runtest_setup(item): util._assertion_pass = call_assertion_pass_hook + yield -def pytest_runtest_teardown(item): - util._reprcompare = None - util._assertion_pass = None + util._reprcompare, util._assertion_pass = saved_assert_hooks def pytest_sessionfinish(session): |