1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
commit 91b09d5b376cfb8afd4b6af5b407f57aa42011c7
Author: Miro Hrončok <miro@hroncok.cz>
Date: Mon Jul 20 13:18:23 2020 +0200
Tests: Add a value to mocked entry_points, so pytest 6+ can log it
Pytest 6.0.0rc1 attempts to log a repr of our mocked entry_point,
but it fails, becasue the repr metohod expects a valua attribute:
Reproducer:
$ tox -e py38 --force-dep 'pytest==6.0.0rc1'
...
Traceback (most recent call last):
File "/usr/lib/python3.8/logging/__init__.py", line 1081, in emit
msg = self.format(record)
File "/usr/lib/python3.8/logging/__init__.py", line 925, in format
return fmt.format(record)
File "/usr/lib/python3.8/logging/__init__.py", line 664, in format
record.message = record.getMessage()
File "/usr/lib/python3.8/logging/__init__.py", line 369, in getMessage
msg = msg % self.args
File "/tmp/flake8/.tox/py38/lib/python3.8/site-packages/flake8/plugins/manager.py", line 44, in __repr__
self.name, self.entry_point.value
File "/tmp/flake8/.tox/py38/lib/python3.8/site-packages/mock/mock.py", line 632, in __getattr__
raise AttributeError("Mock object has no attribute %r" % name)
AttributeError: Mock object has no attribute 'value'
diff --git a/tests/integration/test_checker.py b/tests/integration/test_checker.py
index eaab5c3..0acdb6e 100644
--- a/tests/integration/test_checker.py
+++ b/tests/integration/test_checker.py
@@ -100,6 +100,7 @@ def mock_file_checker_with_plugin(plugin_target):
entry_point = mock.Mock(spec=['load'])
entry_point.name = plugin_target.name
entry_point.load.return_value = plugin_target
+ entry_point.value = 'mocked:value'
# Load the checker plugins using the entry point mock
with mock.patch.object(
|