Replace env.deprecated_call() with pytest.deprecated_call() (#5893)

Since we already require pytest>=6 (see tests/requirements.txt), the
old compatibility function is obsolete and pytest.deprecated_call() can
be used directly.

Extracted from PR #5879

Co-authored-by: Michael Carlstrom <rmc@carlstrom.com>
Co-authored-by: gentlegiantJGC <gentlegiantJGC@users.noreply.github.com>
This commit is contained in:
Ralf W. Grosse-Kunstleve
2025-11-11 19:27:53 -08:00
committed by GitHub
parent 3370fe14b7
commit b30e72c6f6
2 changed files with 2 additions and 20 deletions

View File

@@ -4,8 +4,6 @@ import platform
import sys
import sysconfig
import pytest
ANDROID = sys.platform.startswith("android")
LINUX = sys.platform.startswith("linux")
MACOS = sys.platform.startswith("darwin")
@@ -29,19 +27,3 @@ TYPES_ARE_IMMORTAL = (
or GRAALPY
or (CPYTHON and PY_GIL_DISABLED and (3, 13) <= sys.version_info < (3, 14))
)
def deprecated_call():
"""
pytest.deprecated_call() seems broken in pytest<3.9.x; concretely, it
doesn't work on CPython 3.8.0 with pytest==3.3.2 on Ubuntu 18.04 (#2922).
This is a narrowed reimplementation of the following PR :(
https://github.com/pytest-dev/pytest/pull/4104
"""
# TODO: Remove this when testing requires pytest>=3.9.
pieces = pytest.__version__.split(".")
pytest_major_minor = (int(pieces[0]), int(pieces[1]))
if pytest_major_minor < (3, 9):
return pytest.warns((DeprecationWarning, PendingDeprecationWarning))
return pytest.deprecated_call()

View File

@@ -304,7 +304,7 @@ def test_int_convert(doc):
# TODO: Avoid DeprecationWarning in `PyLong_AsLong` (and similar)
# TODO: PyPy 3.8 does not behave like CPython 3.8 here yet (7.3.7)
if sys.version_info < (3, 10) and env.CPYTHON:
with env.deprecated_call():
with pytest.deprecated_call():
assert convert(Int()) == 42
else:
assert convert(Int()) == 42
@@ -377,7 +377,7 @@ def test_numpy_int_convert():
# TODO: PyPy 3.8 does not behave like CPython 3.8 here yet (7.3.7)
# https://github.com/pybind/pybind11/issues/3408
if (3, 8) <= sys.version_info < (3, 10) and env.CPYTHON:
with env.deprecated_call():
with pytest.deprecated_call():
assert convert(np.float32(3.14159)) == 3
else:
assert convert(np.float32(3.14159)) == 3