guru/dev-python/pytest-flask/files/pytest-flask-fix-flask-compat.patch
David Roman 3099637030
dev-python/pytest-flask: fix compatibility with flask 3.0.0
Closes: https://bugs.gentoo.org/915522
Signed-off-by: David Roman <davidroman96@gmail.com>
2023-10-10 12:21:42 +02:00

75 lines
2.8 KiB
Diff

diff --git a/pytest_flask/fixtures.py b/pytest_flask/fixtures.py
index eb25861..486ec8b 100755
--- a/pytest_flask/fixtures.py
+++ b/pytest_flask/fixtures.py
@@ -3,7 +3,6 @@ import socket
import warnings
import pytest
-from flask import _request_ctx_stack
from ._internal import _determine_scope
from ._internal import _make_accept_header
@@ -93,23 +92,6 @@ def config(app):
return app.config
-@pytest.fixture
-def request_ctx(app):
- """The request context which contains all request relevant information,
- e.g. `session`, `g`, `flashes`, etc.
- """
- warnings.warn(
- "In Werzeug 2.0.0, the Client request methods "
- "(client.get, client.post) always return an instance of TestResponse. This "
- "class provides a reference to the request object through 'response.request' "
- "The fixture 'request_ctx' is deprecated and will be removed in the future, using TestResponse.request "
- "is the prefered way.",
- DeprecationWarning,
- stacklevel=2,
- )
- return _request_ctx_stack.top
-
-
@pytest.fixture(params=["application/json", "text/html"])
def mimetype(request):
return request.param
diff --git a/pytest_flask/plugin.py b/pytest_flask/plugin.py
index bb4bf59..037f062 100755
--- a/pytest_flask/plugin.py
+++ b/pytest_flask/plugin.py
@@ -19,7 +19,6 @@ from .fixtures import client
from .fixtures import client_class
from .fixtures import config
from .fixtures import live_server
-from .fixtures import request_ctx
from .pytest_compat import getfixturevalue
diff --git a/tests/test_fixtures.py b/tests/test_fixtures.py
index a55fd98..b38af95 100755
--- a/tests/test_fixtures.py
+++ b/tests/test_fixtures.py
@@ -16,21 +16,6 @@ class TestFixtures:
def test_accept_jsonp(self, accept_jsonp):
assert accept_jsonp == [("Accept", "application/json-p")]
- def test_request_ctx(self, app, request_ctx):
- assert request_ctx.app is app
-
- def test_request_ctx_is_kept_around(self, client):
- res = client.get(url_for("index"), headers=[("X-Something", "42")])
- """In werkzeug 2.0.0 the test Client provides a new attribute 'request'
- in the response class wich holds a reference to the request object that
- produced the respective response, making instrospection easier"""
- try:
- assert res.request.headers["X-Something"] == "42"
- except AttributeError:
- """This is the conventional (pre 2.0.0) way of reaching the
- request object, using flask.request global."""
- assert request.headers["X-Something"] == "42"
-
def test_accept_mimetype(self, accept_mimetype):
mimestrings = [[("Accept", "application/json")], [("Accept", "text/html")]]
assert accept_mimetype in mimestrings