python311Packages.pycodestyle: Fix tests on python 3.11.4

Applies a modified version of upstreams patch to fix the tests, only
upstream only recognized the issue from 3.12, while it hit us on 3.11.4.
This commit is contained in:
Martin Weinelt
2023-06-15 23:30:21 +02:00
parent d4f6cac30b
commit d8019d3d27
2 changed files with 23 additions and 0 deletions
@@ -18,6 +18,13 @@ buildPythonPackage rec {
hash = "sha256-NHGHvbR2Mp2Y9pXCE9cpWoRtEVL/T+m6y4qVkLjucFM=";
};
patches = [
# https://github.com/PyCQA/pycodestyle/issues/1151
# Applies a modified version of an upstream patch that only applied
# to Python 3.12.
./python-3.11.4-compat.patch
];
# https://github.com/PyCQA/pycodestyle/blob/2.10.0/tox.ini#L13
checkPhase = ''
${python.interpreter} -m pycodestyle --statistics pycodestyle.py
@@ -0,0 +1,16 @@
diff --git a/testsuite/test_api.py b/testsuite/test_api.py
index 8dde32ff..38e34acf 100644
--- a/testsuite/test_api.py
+++ b/testsuite/test_api.py
@@ -329,7 +329,10 @@ def test_check_nullbytes(self):
count_errors = pep8style.input_file('stdin', lines=['\x00\n'])
stdout = sys.stdout.getvalue()
- expected = "stdin:1:1: E901 ValueError"
+ if sys.version_info < (3, 11, 4):
+ expected = "stdin:1:1: E901 ValueError"
+ else:
+ expected = "stdin:1:1: E901 SyntaxError: source code string cannot contain null bytes" # noqa: E501
self.assertTrue(stdout.startswith(expected),
msg='Output %r does not start with %r' %
(stdout, expected))