python-gunicorn/pytest5.patch

68 lines
2.4 KiB
Diff

From f38f717539b1b7296720805b8ae3969c3509b9c1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20Ba=C5=A1ti?= <mbasti@redhat.com>
Date: Thu, 11 Jul 2019 19:12:16 +0200
Subject: [PATCH] Fix pytest 5.0.0 compatibility
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
pytest.raises() returns exception info not the exception itself. They
changed implementation of exception info, so now .value property must be
used to get the exception instance and have proper output from str()
method.
https://github.com/pytest-dev/pytest/issues/5412
Signed-off-by: Martin Bašti <mbasti@redhat.com>
---
tests/test_util.py | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
Index: gunicorn-19.9.0/tests/test_util.py
===================================================================
--- gunicorn-19.9.0.orig/tests/test_util.py
+++ gunicorn-19.9.0/tests/test_util.py
@@ -24,9 +24,9 @@ def test_parse_address(test_input, expec
def test_parse_address_invalid():
- with pytest.raises(RuntimeError) as err:
+ with pytest.raises(RuntimeError) as exc_info:
util.parse_address('127.0.0.1:test')
- assert "'test' is not a valid port number." in str(err)
+ assert "'test' is not a valid port number." in str(exc_info.value)
def test_http_date():
@@ -52,24 +52,24 @@ def test_warn(capsys):
def test_import_app():
assert util.import_app('support:app')
- with pytest.raises(ImportError) as err:
+ with pytest.raises(ImportError) as exc_info:
util.import_app('a:app')
- assert 'No module' in str(err)
+ assert 'No module' in str(exc_info.value)
- with pytest.raises(AppImportError) as err:
+ with pytest.raises(AppImportError) as exc_info:
util.import_app('support:wrong_app')
msg = "Failed to find application object 'wrong_app' in 'support'"
- assert msg in str(err)
+ assert msg in str(exc_info.value)
def test_to_bytestring():
assert util.to_bytestring('test_str', 'ascii') == b'test_str'
assert util.to_bytestring('test_str®') == b'test_str\xc2\xae'
assert util.to_bytestring(b'byte_test_str') == b'byte_test_str'
- with pytest.raises(TypeError) as err:
+ with pytest.raises(TypeError) as exc_info:
util.to_bytestring(100)
msg = '100 is not a string'
- assert msg in str(err)
+ assert msg in str(exc_info.value)
@pytest.mark.parametrize('test_input, expected', [