forked from pool/python-pytest-subprocess
87 lines
3.1 KiB
Diff
87 lines
3.1 KiB
Diff
From be30d9a94ba45afb600717e3fcd95b8b2ff2c60e Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
|
|
Date: Fri, 23 May 2025 21:59:14 +0200
|
|
Subject: [PATCH] Fix test_examples on Python 3.14 (#185)
|
|
|
|
This is basically a followup of https://github.com/aklajnert/pytest-subprocess/pull/148
|
|
---
|
|
tests/test_examples.py | 28 ++++++++++++++++------------
|
|
1 file changed, 16 insertions(+), 12 deletions(-)
|
|
|
|
Index: pytest-subprocess-1.5.3/tests/test_examples.py
|
|
===================================================================
|
|
--- pytest-subprocess-1.5.3.orig/tests/test_examples.py
|
|
+++ pytest-subprocess-1.5.3/tests/test_examples.py
|
|
@@ -1,3 +1,4 @@
|
|
+import sys
|
|
from pathlib import Path
|
|
|
|
import pytest
|
|
@@ -39,18 +40,21 @@ def test_documentation(testdir, rst_file
|
|
" os.chdir(os.path.dirname(__file__))\n\n"
|
|
)
|
|
|
|
- event_loop_fixture = (
|
|
- "\n\n"
|
|
- "@pytest.fixture(autouse=True)\n"
|
|
- "def event_loop(request):\n"
|
|
- " policy = asyncio.get_event_loop_policy()\n"
|
|
- ' if sys.platform == "win32":\n'
|
|
- " loop = asyncio.ProactorEventLoop()\n"
|
|
- " else:\n"
|
|
- " loop = policy.get_event_loop()\n"
|
|
- " yield loop\n"
|
|
- " loop.close()\n"
|
|
- )
|
|
+ if sys.version_info < (3, 8):
|
|
+ event_loop_fixture = (
|
|
+ "\n\n"
|
|
+ "@pytest.fixture(autouse=True)\n"
|
|
+ "def event_loop(request):\n"
|
|
+ " policy = asyncio.get_event_loop_policy()\n"
|
|
+ ' if sys.platform == "win32":\n'
|
|
+ " loop = asyncio.ProactorEventLoop()\n"
|
|
+ " else:\n"
|
|
+ " loop = policy.get_event_loop()\n"
|
|
+ " yield loop\n"
|
|
+ " loop.close()\n"
|
|
+ )
|
|
+ else:
|
|
+ event_loop_fixture = ""
|
|
|
|
code_blocks = "\n".join(get_code_blocks(ROOT_DIR / rst_file))
|
|
testdir.makepyfile(
|
|
Index: pytest-subprocess-1.5.3/tests/test_asyncio.py
|
|
===================================================================
|
|
--- pytest-subprocess-1.5.3.orig/tests/test_asyncio.py
|
|
+++ pytest-subprocess-1.5.3/tests/test_asyncio.py
|
|
@@ -2,6 +2,7 @@ import asyncio
|
|
import os
|
|
import sys
|
|
import time
|
|
+import warnings
|
|
|
|
import anyio
|
|
import pytest
|
|
@@ -13,12 +14,14 @@ PYTHON = sys.executable
|
|
|
|
@pytest.fixture()
|
|
def event_loop_policy(request):
|
|
- if sys.platform.startswith("win"):
|
|
- if request.node.name.startswith("test_invalid_event_loop"):
|
|
- return asyncio.WindowsSelectorEventLoopPolicy()
|
|
- else:
|
|
- return asyncio.WindowsProactorEventLoopPolicy()
|
|
- return asyncio.DefaultEventLoopPolicy()
|
|
+ with warnings.catch_warnings():
|
|
+ warnings.simplefilter('ignore', DeprecationWarning)
|
|
+ if sys.platform.startswith("win"):
|
|
+ if request.node.name.startswith("test_invalid_event_loop"):
|
|
+ return asyncio.WindowsSelectorEventLoopPolicy()
|
|
+ else:
|
|
+ return asyncio.WindowsProactorEventLoopPolicy()
|
|
+ return asyncio.DefaultEventLoopPolicy()
|
|
|
|
|
|
if sys.platform.startswith("win") and sys.version_info < (3, 8):
|