File py314-fix-tests.patch of Package python-pytest-subprocess

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):
openSUSE Build Service is sponsored by