From 720240501dca0b4eacc3295665d7ced8719e11d2 Mon Sep 17 00:00:00 2001 From: Quentin Pradet Date: Fri, 28 Apr 2023 23:28:43 +0400 Subject: [PATCH] Test urllib3 2.0 Upstream-Status: Submitted [https://github.com/requests/toolbelt/pull/356] Signed-off-by: Khem Raj --- .../redirect_request_for_dump_all.json | 302 +++++++++++++----- tests/cassettes/simple_get_request.json | 16 +- tox.ini | 11 +- 3 files changed, 239 insertions(+), 90 deletions(-) diff --git a/tests/cassettes/redirect_request_for_dump_all.json b/tests/cassettes/redirect_request_for_dump_all.json index f713ff3..dc8fefe 100644 --- a/tests/cassettes/redirect_request_for_dump_all.json +++ b/tests/cassettes/redirect_request_for_dump_all.json @@ -1,17 +1,25 @@ { "http_interactions": [ { - "recorded_at": "2015-11-14T22:53:20", + "recorded_at": "2023-04-28T18:04:50", "request": { "body": { "encoding": "utf-8", "string": "" }, "headers": { - "Accept": "*/*", - "Accept-Encoding": "gzip, deflate", - "Connection": "keep-alive", - "User-Agent": "python-requests/2.8.1" + "Accept": [ + "*/*" + ], + "Accept-Encoding": [ + "gzip, deflate" + ], + "Connection": [ + "keep-alive" + ], + "User-Agent": [ + "python-requests/2.28.1" + ] }, "method": "GET", "uri": "https://httpbin.org/redirect/5" @@ -22,14 +30,30 @@ "string": "\nRedirecting...\n

Redirecting...

\n

You should be redirected automatically to target URL: /relative-redirect/4. If not click the link." }, "headers": { - "Access-Control-Allow-Credentials": "true", - "Access-Control-Allow-Origin": "*", - "Connection": "keep-alive", - "Content-Length": "247", - "Content-Type": "text/html; charset=utf-8", - "Date": "Sat, 14 Nov 2015 22:53:18 GMT", - "Location": "/relative-redirect/4", - "Server": "nginx" + "Access-Control-Allow-Credentials": [ + "true" + ], + "Access-Control-Allow-Origin": [ + "*" + ], + "Connection": [ + "keep-alive" + ], + "Content-Length": [ + "247" + ], + "Content-Type": [ + "text/html; charset=utf-8" + ], + "Date": [ + "Fri, 28 Apr 2023 18:04:50 GMT" + ], + "Location": [ + "/relative-redirect/4" + ], + "Server": [ + "gunicorn/19.9.0" + ] }, "status": { "code": 302, @@ -39,17 +63,25 @@ } }, { - "recorded_at": "2015-11-14T22:53:20", + "recorded_at": "2023-04-28T18:04:52", "request": { "body": { "encoding": "utf-8", "string": "" }, "headers": { - "Accept": "*/*", - "Accept-Encoding": "gzip, deflate", - "Connection": "keep-alive", - "User-Agent": "python-requests/2.8.1" + "Accept": [ + "*/*" + ], + "Accept-Encoding": [ + "gzip, deflate" + ], + "Connection": [ + "keep-alive" + ], + "User-Agent": [ + "python-requests/2.28.1" + ] }, "method": "GET", "uri": "https://httpbin.org/relative-redirect/4" @@ -60,14 +92,30 @@ "string": "" }, "headers": { - "Access-Control-Allow-Credentials": "true", - "Access-Control-Allow-Origin": "*", - "Connection": "keep-alive", - "Content-Length": "0", - "Content-Type": "text/html; charset=utf-8", - "Date": "Sat, 14 Nov 2015 22:53:18 GMT", - "Location": "/relative-redirect/3", - "Server": "nginx" + "Access-Control-Allow-Credentials": [ + "true" + ], + "Access-Control-Allow-Origin": [ + "*" + ], + "Connection": [ + "keep-alive" + ], + "Content-Length": [ + "0" + ], + "Content-Type": [ + "text/html; charset=utf-8" + ], + "Date": [ + "Fri, 28 Apr 2023 18:04:52 GMT" + ], + "Location": [ + "/relative-redirect/3" + ], + "Server": [ + "gunicorn/19.9.0" + ] }, "status": { "code": 302, @@ -77,17 +125,25 @@ } }, { - "recorded_at": "2015-11-14T22:53:20", + "recorded_at": "2023-04-28T18:04:53", "request": { "body": { "encoding": "utf-8", "string": "" }, "headers": { - "Accept": "*/*", - "Accept-Encoding": "gzip, deflate", - "Connection": "keep-alive", - "User-Agent": "python-requests/2.8.1" + "Accept": [ + "*/*" + ], + "Accept-Encoding": [ + "gzip, deflate" + ], + "Connection": [ + "keep-alive" + ], + "User-Agent": [ + "python-requests/2.28.1" + ] }, "method": "GET", "uri": "https://httpbin.org/relative-redirect/3" @@ -98,14 +154,30 @@ "string": "" }, "headers": { - "Access-Control-Allow-Credentials": "true", - "Access-Control-Allow-Origin": "*", - "Connection": "keep-alive", - "Content-Length": "0", - "Content-Type": "text/html; charset=utf-8", - "Date": "Sat, 14 Nov 2015 22:53:18 GMT", - "Location": "/relative-redirect/2", - "Server": "nginx" + "Access-Control-Allow-Credentials": [ + "true" + ], + "Access-Control-Allow-Origin": [ + "*" + ], + "Connection": [ + "keep-alive" + ], + "Content-Length": [ + "0" + ], + "Content-Type": [ + "text/html; charset=utf-8" + ], + "Date": [ + "Fri, 28 Apr 2023 18:04:53 GMT" + ], + "Location": [ + "/relative-redirect/2" + ], + "Server": [ + "gunicorn/19.9.0" + ] }, "status": { "code": 302, @@ -115,17 +187,25 @@ } }, { - "recorded_at": "2015-11-14T22:53:20", + "recorded_at": "2023-04-28T18:04:55", "request": { "body": { "encoding": "utf-8", "string": "" }, "headers": { - "Accept": "*/*", - "Accept-Encoding": "gzip, deflate", - "Connection": "keep-alive", - "User-Agent": "python-requests/2.8.1" + "Accept": [ + "*/*" + ], + "Accept-Encoding": [ + "gzip, deflate" + ], + "Connection": [ + "keep-alive" + ], + "User-Agent": [ + "python-requests/2.28.1" + ] }, "method": "GET", "uri": "https://httpbin.org/relative-redirect/2" @@ -136,14 +216,30 @@ "string": "" }, "headers": { - "Access-Control-Allow-Credentials": "true", - "Access-Control-Allow-Origin": "*", - "Connection": "keep-alive", - "Content-Length": "0", - "Content-Type": "text/html; charset=utf-8", - "Date": "Sat, 14 Nov 2015 22:53:18 GMT", - "Location": "/relative-redirect/1", - "Server": "nginx" + "Access-Control-Allow-Credentials": [ + "true" + ], + "Access-Control-Allow-Origin": [ + "*" + ], + "Connection": [ + "keep-alive" + ], + "Content-Length": [ + "0" + ], + "Content-Type": [ + "text/html; charset=utf-8" + ], + "Date": [ + "Fri, 28 Apr 2023 18:04:55 GMT" + ], + "Location": [ + "/relative-redirect/1" + ], + "Server": [ + "gunicorn/19.9.0" + ] }, "status": { "code": 302, @@ -153,17 +249,25 @@ } }, { - "recorded_at": "2015-11-14T22:53:20", + "recorded_at": "2023-04-28T18:04:56", "request": { "body": { "encoding": "utf-8", "string": "" }, "headers": { - "Accept": "*/*", - "Accept-Encoding": "gzip, deflate", - "Connection": "keep-alive", - "User-Agent": "python-requests/2.8.1" + "Accept": [ + "*/*" + ], + "Accept-Encoding": [ + "gzip, deflate" + ], + "Connection": [ + "keep-alive" + ], + "User-Agent": [ + "python-requests/2.28.1" + ] }, "method": "GET", "uri": "https://httpbin.org/relative-redirect/1" @@ -174,14 +278,30 @@ "string": "" }, "headers": { - "Access-Control-Allow-Credentials": "true", - "Access-Control-Allow-Origin": "*", - "Connection": "keep-alive", - "Content-Length": "0", - "Content-Type": "text/html; charset=utf-8", - "Date": "Sat, 14 Nov 2015 22:53:18 GMT", - "Location": "/get", - "Server": "nginx" + "Access-Control-Allow-Credentials": [ + "true" + ], + "Access-Control-Allow-Origin": [ + "*" + ], + "Connection": [ + "keep-alive" + ], + "Content-Length": [ + "0" + ], + "Content-Type": [ + "text/html; charset=utf-8" + ], + "Date": [ + "Fri, 28 Apr 2023 18:04:56 GMT" + ], + "Location": [ + "/get" + ], + "Server": [ + "gunicorn/19.9.0" + ] }, "status": { "code": 302, @@ -191,34 +311,56 @@ } }, { - "recorded_at": "2015-11-14T22:53:20", + "recorded_at": "2023-04-28T18:04:58", "request": { "body": { "encoding": "utf-8", "string": "" }, "headers": { - "Accept": "*/*", - "Accept-Encoding": "gzip, deflate", - "Connection": "keep-alive", - "User-Agent": "python-requests/2.8.1" + "Accept": [ + "*/*" + ], + "Accept-Encoding": [ + "gzip, deflate" + ], + "Connection": [ + "keep-alive" + ], + "User-Agent": [ + "python-requests/2.28.1" + ] }, "method": "GET", "uri": "https://httpbin.org/get" }, "response": { "body": { - "encoding": null, - "string": "{\n \"args\": {}, \n \"headers\": {\n \"Accept\": \"*/*\", \n \"Accept-Encoding\": \"gzip, deflate\", \n \"Host\": \"httpbin.org\", \n \"User-Agent\": \"python-requests/2.8.1\"\n }, \n \"origin\": \"\", \n \"url\": \"https://httpbin.org/get\"\n}\n" + "encoding": "utf-8", + "string": "{\n \"args\": {}, \n \"headers\": {\n \"Accept\": \"*/*\", \n \"Accept-Encoding\": \"gzip, deflate\", \n \"Host\": \"httpbin.org\", \n \"User-Agent\": \"python-requests/2.28.1\", \n \"X-Amzn-Trace-Id\": \"Root=1-644c0ac8-450daa2735c478ca518c5c8d\"\n }, \n \"origin\": \"83.198.52.66\", \n \"url\": \"https://httpbin.org/get\"\n}\n" }, "headers": { - "Access-Control-Allow-Credentials": "true", - "Access-Control-Allow-Origin": "*", - "Connection": "keep-alive", - "Content-Length": "239", - "Content-Type": "application/json", - "Date": "Sat, 14 Nov 2015 22:53:18 GMT", - "Server": "nginx" + "Access-Control-Allow-Credentials": [ + "true" + ], + "Access-Control-Allow-Origin": [ + "*" + ], + "Connection": [ + "keep-alive" + ], + "Content-Length": [ + "306" + ], + "Content-Type": [ + "application/json" + ], + "Date": [ + "Fri, 28 Apr 2023 18:04:58 GMT" + ], + "Server": [ + "gunicorn/19.9.0" + ] }, "status": { "code": 200, @@ -228,5 +370,5 @@ } } ], - "recorded_with": "betamax/0.5.1" + "recorded_with": "betamax/0.8.2" } \ No newline at end of file diff --git a/tests/cassettes/simple_get_request.json b/tests/cassettes/simple_get_request.json index 68378cd..a97bcf1 100644 --- a/tests/cassettes/simple_get_request.json +++ b/tests/cassettes/simple_get_request.json @@ -1,7 +1,7 @@ { "http_interactions": [ { - "recorded_at": "2015-11-14T22:33:32", + "recorded_at": "2023-04-28T18:04:48", "request": { "body": { "encoding": "utf-8", @@ -18,7 +18,7 @@ "keep-alive" ], "User-Agent": [ - "python-requests/2.8.1" + "python-requests/2.28.1" ] }, "method": "GET", @@ -26,8 +26,8 @@ }, "response": { "body": { - "encoding": null, - "string": "{\n \"args\": {}, \n \"headers\": {\n \"Accept\": \"*/*\", \n \"Accept-Encoding\": \"gzip, deflate\", \n \"Host\": \"httpbin.org\", \n \"User-Agent\": \"python-requests/2.8.1\"\n }, \n \"origin\": \"\", \n \"url\": \"https://httpbin.org/get\"\n}\n" + "encoding": "utf-8", + "string": "{\n \"args\": {}, \n \"headers\": {\n \"Accept\": \"*/*\", \n \"Accept-Encoding\": \"gzip, deflate\", \n \"Host\": \"httpbin.org\", \n \"User-Agent\": \"python-requests/2.28.1\", \n \"X-Amzn-Trace-Id\": \"Root=1-644c0ac0-4986bed42b965a007af785e1\"\n }, \n \"origin\": \"83.198.52.66\", \n \"url\": \"https://httpbin.org/get\"\n}\n" }, "headers": { "Access-Control-Allow-Credentials": [ @@ -40,16 +40,16 @@ "keep-alive" ], "Content-Length": [ - "239" + "306" ], "Content-Type": [ "application/json" ], "Date": [ - "Sat, 14 Nov 2015 22:33:30 GMT" + "Fri, 28 Apr 2023 18:04:48 GMT" ], "Server": [ - "nginx" + "gunicorn/19.9.0" ] }, "status": { @@ -60,5 +60,5 @@ } } ], - "recorded_with": "betamax/0.5.1" + "recorded_with": "betamax/0.8.2" } \ No newline at end of file diff --git a/tox.ini b/tox.ini index 64b6ab3..e27c275 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py{27,37,38,39,310,311,py,py3},py{27,37}-flake8,noopenssl,docstrings +envlist = py{27,37,38,39,310,311,py,py3},py{27,37}-flake8,noopenssl,docstrings,urllib3-2.0 [gh-actions] python = @@ -8,12 +8,13 @@ python = 3.8: py38 3.9: py39 3.10: py310 - 3.11: py311 + 3.11: py311, urllib3-2.0 [testenv] pip_pre = False deps = requests{env:REQUESTS_VERSION:>=2.0.1,<3.0.0} + urllib3<2.0.0 pytest mock;python_version<"3.3" pyopenssl @@ -34,6 +35,12 @@ deps = commands = pytest -W error::DeprecationWarning {posargs} +[testenv:urllib3-2.0] +basepython = python3.11 +commands = + pip install -U urllib3>=2.0.0 + pytest -W error::DeprecationWarning {posargs} + [testenv:py27-flake8] basepython = python2.7 deps =