- Add upstream pytest84.patch for compatibility with pytest 8.4.0 OBS-URL: https://build.opensuse.org/request/show/1287227 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-asyncio?expand=0&rev=57
79 lines
2.9 KiB
Diff
79 lines
2.9 KiB
Diff
From 8c6612fda96f78a1df2f0d271426b7b6e3c10737 Mon Sep 17 00:00:00 2001
|
|
From: Yao Zi <ziyao@disroot.org>
|
|
Date: Tue, 10 Jun 2025 16:17:11 +0000
|
|
Subject: [PATCH] test: Adapt unmarked async tests in strict mode for pytest
|
|
8.4.0
|
|
|
|
Async tests fail instead of skipping and warning with Pytest 8.4.0 if
|
|
no suitable async plugin is installed[1]. Adjust expectation of these
|
|
tests to pass the testsuite with Pytest 8.4.0.
|
|
|
|
Link: https://docs.pytest.org/en/stable/changelog.html#pytest-8-4-0-2025-06-02 # [1]
|
|
Signed-off-by: Yao Zi <ziyao@disroot.org>
|
|
---
|
|
tests/modes/test_strict_mode.py | 23 ++++++++++++++++++-----
|
|
1 file changed, 18 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/tests/modes/test_strict_mode.py b/tests/modes/test_strict_mode.py
|
|
index 52cbb251..44f54b7d 100644
|
|
--- a/tests/modes/test_strict_mode.py
|
|
+++ b/tests/modes/test_strict_mode.py
|
|
@@ -2,7 +2,7 @@
|
|
|
|
from textwrap import dedent
|
|
|
|
-from pytest import Pytester
|
|
+from pytest import Pytester, version_tuple as pytest_version
|
|
|
|
|
|
def test_strict_mode_cmdline(pytester: Pytester):
|
|
@@ -95,7 +95,10 @@ async def test_anything():
|
|
)
|
|
)
|
|
result = pytester.runpytest_subprocess("--asyncio-mode=strict", "-W default")
|
|
- result.assert_outcomes(skipped=1, warnings=1)
|
|
+ if pytest_version >= (8, 4, 0):
|
|
+ result.assert_outcomes(failed=1, skipped=0, warnings=0)
|
|
+ else:
|
|
+ result.assert_outcomes(skipped=1, warnings=1)
|
|
result.stdout.fnmatch_lines(["*async def functions are not natively supported*"])
|
|
|
|
|
|
@@ -117,7 +120,11 @@ async def test_anything(any_fixture):
|
|
)
|
|
)
|
|
result = pytester.runpytest_subprocess("--asyncio-mode=strict", "-W default")
|
|
- result.assert_outcomes(skipped=1, warnings=2)
|
|
+
|
|
+ if pytest_version >= (8, 4, 0):
|
|
+ result.assert_outcomes(failed=1, skipped=0, warnings=2)
|
|
+ else:
|
|
+ result.assert_outcomes(skipped=1, warnings=2)
|
|
result.stdout.fnmatch_lines(
|
|
[
|
|
"*async def functions are not natively supported*",
|
|
@@ -149,7 +156,10 @@ async def test_anything(any_fixture):
|
|
)
|
|
)
|
|
result = pytester.runpytest_subprocess("--asyncio-mode=strict", "-W default")
|
|
- result.assert_outcomes(passed=1, failed=0, skipped=0, warnings=1)
|
|
+ if pytest_version >= (8, 4, 0):
|
|
+ result.assert_outcomes(passed=1, failed=0, skipped=0, warnings=2)
|
|
+ else:
|
|
+ result.assert_outcomes(passed=1, failed=0, skipped=0, warnings=1)
|
|
result.stdout.fnmatch_lines(
|
|
[
|
|
"*warnings summary*",
|
|
@@ -193,7 +203,10 @@ async def test_anything(any_fixture):
|
|
)
|
|
)
|
|
result = pytester.runpytest_subprocess("--asyncio-mode=strict", "-W default")
|
|
- result.assert_outcomes(passed=1, warnings=1)
|
|
+ if pytest_version >= (8, 4, 0):
|
|
+ result.assert_outcomes(passed=1, warnings=2)
|
|
+ else:
|
|
+ result.assert_outcomes(passed=1, warnings=1)
|
|
result.stdout.fnmatch_lines(
|
|
[
|
|
"*warnings summary*",
|