Merge lp:~gz/brz/flake8_source_test into lp:brz
- flake8_source_test
- Merge into trunk
Proposed by
Martin Packman
Status: | Merged |
---|---|
Approved by: | Martin Packman |
Approved revision: | no longer in the source branch. |
Merge reported by: | The Breezy Bot |
Merged at revision: | not available |
Proposed branch: | lp:~gz/brz/flake8_source_test |
Merge into: | lp:brz |
Diff against target: |
374 lines (+58/-71) 6 files modified
breezy/bzr/__init__.py (+1/-1) breezy/git/tests/test_tree.py (+26/-23) breezy/tests/__init__.py (+7/-0) breezy/tests/blackbox/test_big_file.py (+0/-3) breezy/tests/test_source.py (+20/-42) setup.cfg (+4/-2) |
To merge this branch: | bzr merge lp:~gz/brz/flake8_source_test |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Jelmer Vernooij | Approve | ||
Review via email: mp+407491@code.launchpad.net |
Commit message
Make flake8 source test behave
Description of the change
Using the new 'legacy' api where possible, skipping only on compat issues.
Next text_log_file() test method to get context for writing text in.
Ignore some more error types, fix a few lint complaints.
To post a comment you must log in.
Revision history for this message
Jelmer Vernooij (jelmer) : | # |
review:
Approve
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'breezy/bzr/__init__.py' | |||
2 | --- breezy/bzr/__init__.py 2020-07-28 02:11:05 +0000 | |||
3 | +++ breezy/bzr/__init__.py 2021-08-21 13:33:23 +0000 | |||
4 | @@ -51,7 +51,7 @@ | |||
5 | 51 | raise errors.NotBranchError(path=transport.base) | 51 | raise errors.NotBranchError(path=transport.base) |
6 | 52 | except errors.BadHttpRequest as e: | 52 | except errors.BadHttpRequest as e: |
7 | 53 | if e.reason == 'no such method: .bzr': | 53 | if e.reason == 'no such method: .bzr': |
9 | 54 | # hgweb | 54 | # hgweb |
10 | 55 | raise errors.NotBranchError(path=transport.base) | 55 | raise errors.NotBranchError(path=transport.base) |
11 | 56 | raise | 56 | raise |
12 | 57 | 57 | ||
13 | 58 | 58 | ||
14 | === modified file 'breezy/git/tests/test_tree.py' | |||
15 | --- breezy/git/tests/test_tree.py 2021-08-20 15:04:24 +0000 | |||
16 | +++ breezy/git/tests/test_tree.py 2021-08-21 13:33:23 +0000 | |||
17 | @@ -34,6 +34,9 @@ | |||
18 | 34 | from breezy.git.mapping import default_mapping | 34 | from breezy.git.mapping import default_mapping |
19 | 35 | 35 | ||
20 | 36 | 36 | ||
21 | 37 | REG_MODE = stat.S_IFREG | 0o644 | ||
22 | 38 | |||
23 | 39 | |||
24 | 37 | class ChangesFromGitChangesTests(TestCase): | 40 | class ChangesFromGitChangesTests(TestCase): |
25 | 38 | 41 | ||
26 | 39 | def setUp(self): | 42 | def setUp(self): |
27 | @@ -62,7 +65,7 @@ | |||
28 | 62 | (False, False), False) | 65 | (False, False), False) |
29 | 63 | ], self.transform([ | 66 | ], self.transform([ |
30 | 64 | ('modify', | 67 | ('modify', |
32 | 65 | (b'a', stat.S_IFREG|0o644, a), (b'a', stat.S_IFREG|0o644, b))])) | 68 | (b'a', REG_MODE, a), (b'a', REG_MODE, b))])) |
33 | 66 | 69 | ||
34 | 67 | def test_kind_changed(self): | 70 | def test_kind_changed(self): |
35 | 68 | a = Blob.from_string(b'a') | 71 | a = Blob.from_string(b'a') |
36 | @@ -74,7 +77,7 @@ | |||
37 | 74 | (False, False), False) | 77 | (False, False), False) |
38 | 75 | ], self.transform([ | 78 | ], self.transform([ |
39 | 76 | ('modify', | 79 | ('modify', |
41 | 77 | (b'a', stat.S_IFREG|0o644, a), (b'a', stat.S_IFLNK, b))])) | 80 | (b'a', REG_MODE, a), (b'a', stat.S_IFLNK, b))])) |
42 | 78 | 81 | ||
43 | 79 | def test_rename_no_changes(self): | 82 | def test_rename_no_changes(self): |
44 | 80 | a = Blob.from_string(b'a') | 83 | a = Blob.from_string(b'a') |
45 | @@ -85,7 +88,7 @@ | |||
46 | 85 | ('file', 'file'), (False, False), False) | 88 | ('file', 'file'), (False, False), False) |
47 | 86 | ], self.transform([ | 89 | ], self.transform([ |
48 | 87 | ('rename', | 90 | ('rename', |
50 | 88 | (b'old', stat.S_IFREG|0o644, a), (b'a', stat.S_IFREG|0o644, a))])) | 91 | (b'old', REG_MODE, a), (b'a', REG_MODE, a))])) |
51 | 89 | 92 | ||
52 | 90 | def test_rename_and_modify(self): | 93 | def test_rename_and_modify(self): |
53 | 91 | a = Blob.from_string(b'a') | 94 | a = Blob.from_string(b'a') |
54 | @@ -97,7 +100,7 @@ | |||
55 | 97 | ('file', 'file'), (False, False), False) | 100 | ('file', 'file'), (False, False), False) |
56 | 98 | ], self.transform([ | 101 | ], self.transform([ |
57 | 99 | ('rename', | 102 | ('rename', |
59 | 100 | (b'a', stat.S_IFREG|0o644, a), (b'b', stat.S_IFREG|0o644, b))])) | 103 | (b'a', REG_MODE, a), (b'b', REG_MODE, b))])) |
60 | 101 | 104 | ||
61 | 102 | def test_copy_no_changes(self): | 105 | def test_copy_no_changes(self): |
62 | 103 | a = Blob.from_string(b'a') | 106 | a = Blob.from_string(b'a') |
63 | @@ -108,7 +111,7 @@ | |||
64 | 108 | ('file', 'file'), (False, False), True) | 111 | ('file', 'file'), (False, False), True) |
65 | 109 | ], self.transform([ | 112 | ], self.transform([ |
66 | 110 | ('copy', | 113 | ('copy', |
68 | 111 | (b'old', stat.S_IFREG|0o644, a), (b'a', stat.S_IFREG|0o644, a))])) | 114 | (b'old', REG_MODE, a), (b'a', REG_MODE, a))])) |
69 | 112 | 115 | ||
70 | 113 | def test_copy_and_modify(self): | 116 | def test_copy_and_modify(self): |
71 | 114 | a = Blob.from_string(b'a') | 117 | a = Blob.from_string(b'a') |
72 | @@ -120,7 +123,7 @@ | |||
73 | 120 | ('file', 'file'), (False, False), True) | 123 | ('file', 'file'), (False, False), True) |
74 | 121 | ], self.transform([ | 124 | ], self.transform([ |
75 | 122 | ('copy', | 125 | ('copy', |
77 | 123 | (b'a', stat.S_IFREG|0o644, a), (b'b', stat.S_IFREG|0o644, b))])) | 126 | (b'a', REG_MODE, a), (b'b', REG_MODE, b))])) |
78 | 124 | 127 | ||
79 | 125 | def test_add(self): | 128 | def test_add(self): |
80 | 126 | b = Blob.from_string(b'b') | 129 | b = Blob.from_string(b'b') |
81 | @@ -130,7 +133,7 @@ | |||
82 | 130 | (None, 'a'), (None, 'file'), (None, False), False) | 133 | (None, 'a'), (None, 'file'), (None, False), False) |
83 | 131 | ], self.transform([ | 134 | ], self.transform([ |
84 | 132 | ('add', | 135 | ('add', |
86 | 133 | (None, None, None), (b'a', stat.S_IFREG|0o644, b))])) | 136 | (None, None, None), (b'a', REG_MODE, b))])) |
87 | 134 | 137 | ||
88 | 135 | def test_delete(self): | 138 | def test_delete(self): |
89 | 136 | b = Blob.from_string(b'b') | 139 | b = Blob.from_string(b'b') |
90 | @@ -140,7 +143,7 @@ | |||
91 | 140 | ('a', None), ('file', None), (False, None), False) | 143 | ('a', None), ('file', None), (False, None), False) |
92 | 141 | ], self.transform([ | 144 | ], self.transform([ |
93 | 142 | ('remove', | 145 | ('remove', |
95 | 143 | (b'a', stat.S_IFREG|0o644, b), (None, None, None))])) | 146 | (b'a', REG_MODE, b), (None, None, None))])) |
96 | 144 | 147 | ||
97 | 145 | def test_unchanged(self): | 148 | def test_unchanged(self): |
98 | 146 | b = Blob.from_string(b'b') | 149 | b = Blob.from_string(b'b') |
99 | @@ -151,11 +154,11 @@ | |||
100 | 151 | (False, False), False) | 154 | (False, False), False) |
101 | 152 | ], self.transform([ | 155 | ], self.transform([ |
102 | 153 | ('unchanged', | 156 | ('unchanged', |
104 | 154 | (b'a', stat.S_IFREG|0o644, b), (b'a', stat.S_IFREG|0o644, b))], | 157 | (b'a', REG_MODE, b), (b'a', REG_MODE, b))], |
105 | 155 | include_unchanged=True)) | 158 | include_unchanged=True)) |
106 | 156 | self.assertEqual([], self.transform([ | 159 | self.assertEqual([], self.transform([ |
107 | 157 | ('unchanged', | 160 | ('unchanged', |
109 | 158 | (b'a', stat.S_IFREG|0o644, b), (b'a', stat.S_IFREG|0o644, b))], | 161 | (b'a', REG_MODE, b), (b'a', REG_MODE, b))], |
110 | 159 | include_unchanged=False)) | 162 | include_unchanged=False)) |
111 | 160 | 163 | ||
112 | 161 | def test_unversioned(self): | 164 | def test_unversioned(self): |
113 | @@ -167,7 +170,7 @@ | |||
114 | 167 | (None, False), False) | 170 | (None, False), False) |
115 | 168 | ], self.transform([ | 171 | ], self.transform([ |
116 | 169 | ('add', | 172 | ('add', |
118 | 170 | (None, None, None), (b'a', stat.S_IFREG|0o644, b))], | 173 | (None, None, None), (b'a', REG_MODE, b))], |
119 | 171 | target_extras=set([b'a']))) | 174 | target_extras=set([b'a']))) |
120 | 172 | self.assertEqual([ | 175 | self.assertEqual([ |
121 | 173 | TreeChange( | 176 | TreeChange( |
122 | @@ -176,7 +179,7 @@ | |||
123 | 176 | (False, False), False) | 179 | (False, False), False) |
124 | 177 | ], self.transform([ | 180 | ], self.transform([ |
125 | 178 | ('add', | 181 | ('add', |
127 | 179 | (b'a', stat.S_IFREG|0o644, b), (b'a', stat.S_IFREG|0o644, b))], | 182 | (b'a', REG_MODE, b), (b'a', REG_MODE, b))], |
128 | 180 | source_extras=set([b'a']), | 183 | source_extras=set([b'a']), |
129 | 181 | target_extras=set([b'a']))) | 184 | target_extras=set([b'a']))) |
130 | 182 | 185 | ||
131 | @@ -206,7 +209,7 @@ | |||
132 | 206 | b = Blob.from_string(b'b') | 209 | b = Blob.from_string(b'b') |
133 | 207 | delta = self.transform([ | 210 | delta = self.transform([ |
134 | 208 | ('modify', | 211 | ('modify', |
136 | 209 | (b'a', stat.S_IFREG|0o644, a), (b'a', stat.S_IFREG|0o644, b))]) | 212 | (b'a', REG_MODE, a), (b'a', REG_MODE, b))]) |
137 | 210 | expected_delta = TreeDelta() | 213 | expected_delta = TreeDelta() |
138 | 211 | expected_delta.modified.append(TreeChange( | 214 | expected_delta.modified.append(TreeChange( |
139 | 212 | b'git:a', ('a', 'a'), True, (True, True), | 215 | b'git:a', ('a', 'a'), True, (True, True), |
140 | @@ -218,7 +221,7 @@ | |||
141 | 218 | a = Blob.from_string(b'a') | 221 | a = Blob.from_string(b'a') |
142 | 219 | delta = self.transform([ | 222 | delta = self.transform([ |
143 | 220 | ('rename', | 223 | ('rename', |
145 | 221 | (b'old', stat.S_IFREG|0o644, a), (b'a', stat.S_IFREG|0o644, a))]) | 224 | (b'old', REG_MODE, a), (b'a', REG_MODE, a))]) |
146 | 222 | expected_delta = TreeDelta() | 225 | expected_delta = TreeDelta() |
147 | 223 | expected_delta.renamed.append( | 226 | expected_delta.renamed.append( |
148 | 224 | TreeChange( | 227 | TreeChange( |
149 | @@ -232,7 +235,7 @@ | |||
150 | 232 | b = Blob.from_string(b'b') | 235 | b = Blob.from_string(b'b') |
151 | 233 | delta = self.transform([ | 236 | delta = self.transform([ |
152 | 234 | ('rename', | 237 | ('rename', |
154 | 235 | (b'a', stat.S_IFREG|0o644, a), (b'b', stat.S_IFREG|0o644, b))]) | 238 | (b'a', REG_MODE, a), (b'b', REG_MODE, b))]) |
155 | 236 | expected_delta = TreeDelta() | 239 | expected_delta = TreeDelta() |
156 | 237 | expected_delta.renamed.append( | 240 | expected_delta.renamed.append( |
157 | 238 | TreeChange( | 241 | TreeChange( |
158 | @@ -245,7 +248,7 @@ | |||
159 | 245 | a = Blob.from_string(b'a') | 248 | a = Blob.from_string(b'a') |
160 | 246 | delta = self.transform([ | 249 | delta = self.transform([ |
161 | 247 | ('copy', | 250 | ('copy', |
163 | 248 | (b'old', stat.S_IFREG|0o644, a), (b'a', stat.S_IFREG|0o644, a))]) | 251 | (b'old', REG_MODE, a), (b'a', REG_MODE, a))]) |
164 | 249 | expected_delta = TreeDelta() | 252 | expected_delta = TreeDelta() |
165 | 250 | expected_delta.copied.append(TreeChange( | 253 | expected_delta.copied.append(TreeChange( |
166 | 251 | b'git:a', ('old', 'a'), False, (True, True), | 254 | b'git:a', ('old', 'a'), False, (True, True), |
167 | @@ -258,7 +261,7 @@ | |||
168 | 258 | b = Blob.from_string(b'b') | 261 | b = Blob.from_string(b'b') |
169 | 259 | delta = self.transform([ | 262 | delta = self.transform([ |
170 | 260 | ('copy', | 263 | ('copy', |
172 | 261 | (b'a', stat.S_IFREG|0o644, a), (b'b', stat.S_IFREG|0o644, b))]) | 264 | (b'a', REG_MODE, a), (b'b', REG_MODE, b))]) |
173 | 262 | expected_delta = TreeDelta() | 265 | expected_delta = TreeDelta() |
174 | 263 | expected_delta.copied.append(TreeChange( | 266 | expected_delta.copied.append(TreeChange( |
175 | 264 | b'git:b', ('a', 'b'), True, (True, True), | 267 | b'git:b', ('a', 'b'), True, (True, True), |
176 | @@ -270,7 +273,7 @@ | |||
177 | 270 | b = Blob.from_string(b'b') | 273 | b = Blob.from_string(b'b') |
178 | 271 | delta = self.transform([ | 274 | delta = self.transform([ |
179 | 272 | ('add', | 275 | ('add', |
181 | 273 | (None, None, None), (b'a', stat.S_IFREG|0o644, b))]) | 276 | (None, None, None), (b'a', REG_MODE, b))]) |
182 | 274 | expected_delta = TreeDelta() | 277 | expected_delta = TreeDelta() |
183 | 275 | expected_delta.added.append(TreeChange( | 278 | expected_delta.added.append(TreeChange( |
184 | 276 | b'git:a', (None, 'a'), True, (False, True), (None, b'TREE_ROOT'), | 279 | b'git:a', (None, 'a'), True, (False, True), (None, b'TREE_ROOT'), |
185 | @@ -281,7 +284,7 @@ | |||
186 | 281 | b = Blob.from_string(b'b') | 284 | b = Blob.from_string(b'b') |
187 | 282 | delta = self.transform([ | 285 | delta = self.transform([ |
188 | 283 | ('remove', | 286 | ('remove', |
190 | 284 | (b'a', stat.S_IFREG | 0o644, b), | 287 | (b'a', REG_MODE, b), |
191 | 285 | (None, None, None))]) | 288 | (None, None, None))]) |
192 | 286 | expected_delta = TreeDelta() | 289 | expected_delta = TreeDelta() |
193 | 287 | expected_delta.removed.append(TreeChange( | 290 | expected_delta.removed.append(TreeChange( |
194 | @@ -293,7 +296,7 @@ | |||
195 | 293 | b = Blob.from_string(b'b') | 296 | b = Blob.from_string(b'b') |
196 | 294 | delta = self.transform([ | 297 | delta = self.transform([ |
197 | 295 | ('unchanged', | 298 | ('unchanged', |
199 | 296 | (b'a', stat.S_IFREG|0o644, b), (b'a', stat.S_IFREG|0o644, b))]) | 299 | (b'a', REG_MODE, b), (b'a', REG_MODE, b))]) |
200 | 297 | expected_delta = TreeDelta() | 300 | expected_delta = TreeDelta() |
201 | 298 | expected_delta.unchanged.append(TreeChange( | 301 | expected_delta.unchanged.append(TreeChange( |
202 | 299 | b'git:a', ('a', 'a'), False, (True, True), | 302 | b'git:a', ('a', 'a'), False, (True, True), |
203 | @@ -304,7 +307,7 @@ | |||
204 | 304 | b = Blob.from_string(b'b') | 307 | b = Blob.from_string(b'b') |
205 | 305 | delta = self.transform([ | 308 | delta = self.transform([ |
206 | 306 | ('add', | 309 | ('add', |
208 | 307 | (None, None, None), (b'a', stat.S_IFREG|0o644, b))], | 310 | (None, None, None), (b'a', REG_MODE, b))], |
209 | 308 | target_extras=set([b'a'])) | 311 | target_extras=set([b'a'])) |
210 | 309 | expected_delta = TreeDelta() | 312 | expected_delta = TreeDelta() |
211 | 310 | expected_delta.unversioned.append( | 313 | expected_delta.unversioned.append( |
212 | @@ -315,7 +318,7 @@ | |||
213 | 315 | self.assertEqual(delta, expected_delta) | 318 | self.assertEqual(delta, expected_delta) |
214 | 316 | delta = self.transform([ | 319 | delta = self.transform([ |
215 | 317 | ('add', | 320 | ('add', |
217 | 318 | (b'a', stat.S_IFREG|0o644, b), (b'a', stat.S_IFREG|0o644, b))], | 321 | (b'a', REG_MODE, b), (b'a', REG_MODE, b))], |
218 | 319 | source_extras=set([b'a']), | 322 | source_extras=set([b'a']), |
219 | 320 | target_extras=set([b'a'])) | 323 | target_extras=set([b'a'])) |
220 | 321 | expected_delta = TreeDelta() | 324 | expected_delta = TreeDelta() |
221 | @@ -330,7 +333,7 @@ | |||
222 | 330 | b = Blob.from_string(b'target') | 333 | b = Blob.from_string(b'target') |
223 | 331 | delta = self.transform([ | 334 | delta = self.transform([ |
224 | 332 | ('modify', | 335 | ('modify', |
226 | 333 | (b'a', stat.S_IFREG|0o644, a), (b'a', stat.S_IFLNK, b))]) | 336 | (b'a', REG_MODE, a), (b'a', stat.S_IFLNK, b))]) |
227 | 334 | expected_delta = TreeDelta() | 337 | expected_delta = TreeDelta() |
228 | 335 | expected_delta.kind_changed.append(TreeChange( | 338 | expected_delta.kind_changed.append(TreeChange( |
229 | 336 | b'git:a', ('a', 'a'), True, (True, True), | 339 | b'git:a', ('a', 'a'), True, (True, True), |
230 | 337 | 340 | ||
231 | === modified file 'breezy/tests/__init__.py' | |||
232 | --- breezy/tests/__init__.py 2021-08-20 15:32:58 +0000 | |||
233 | +++ breezy/tests/__init__.py 2021-08-21 13:33:23 +0000 | |||
234 | @@ -23,6 +23,7 @@ | |||
235 | 23 | 23 | ||
236 | 24 | import atexit | 24 | import atexit |
237 | 25 | import codecs | 25 | import codecs |
238 | 26 | import contextlib | ||
239 | 26 | import copy | 27 | import copy |
240 | 27 | import difflib | 28 | import difflib |
241 | 28 | import doctest | 29 | import doctest |
242 | @@ -1692,6 +1693,12 @@ | |||
243 | 1692 | self._log_memento = trace.push_log_file(self._log_file) | 1693 | self._log_memento = trace.push_log_file(self._log_file) |
244 | 1693 | self.addCleanup(self._finishLogFile) | 1694 | self.addCleanup(self._finishLogFile) |
245 | 1694 | 1695 | ||
246 | 1696 | @contextlib.contextmanager | ||
247 | 1697 | def text_log_file(self, **kwargs): | ||
248 | 1698 | stream = TextIOWrapper(self._log_file, encoding='utf-8', **kwargs) | ||
249 | 1699 | yield stream | ||
250 | 1700 | stream.detach() | ||
251 | 1701 | |||
252 | 1695 | def _finishLogFile(self): | 1702 | def _finishLogFile(self): |
253 | 1696 | """Flush and dereference the in-memory log for this testcase""" | 1703 | """Flush and dereference the in-memory log for this testcase""" |
254 | 1697 | if trace._trace_file: | 1704 | if trace._trace_file: |
255 | 1698 | 1705 | ||
256 | === modified file 'breezy/tests/blackbox/test_big_file.py' | |||
257 | --- breezy/tests/blackbox/test_big_file.py 2020-05-30 03:06:21 +0000 | |||
258 | +++ breezy/tests/blackbox/test_big_file.py 2021-08-21 13:33:23 +0000 | |||
259 | @@ -41,9 +41,6 @@ | |||
260 | 41 | RESOURCE = resource.RLIMIT_AS | 41 | RESOURCE = resource.RLIMIT_AS |
261 | 42 | LIMIT = 1024 * 1024 * 100 | 42 | LIMIT = 1024 * 1024 * 100 |
262 | 43 | 43 | ||
263 | 44 | if sys.version_info[0] == 2: | ||
264 | 45 | range = xrange | ||
265 | 46 | |||
266 | 47 | 44 | ||
267 | 48 | def make_big_file(path): | 45 | def make_big_file(path): |
268 | 49 | blob_1mb = BIG_FILE_CHUNK_SIZE * b'\x0c' | 46 | blob_1mb = BIG_FILE_CHUNK_SIZE * b'\x0c' |
269 | 50 | 47 | ||
270 | === modified file 'breezy/tests/test_source.py' | |||
271 | --- breezy/tests/test_source.py 2021-08-20 14:07:13 +0000 | |||
272 | +++ breezy/tests/test_source.py 2021-08-21 13:33:23 +0000 | |||
273 | @@ -319,49 +319,27 @@ | |||
274 | 319 | self.fail('\n\n'.join(problems)) | 319 | self.fail('\n\n'.join(problems)) |
275 | 320 | 320 | ||
276 | 321 | def test_flake8(self): | 321 | def test_flake8(self): |
315 | 322 | try: | 322 | self.requireFeature(features.flake8) |
316 | 323 | self.requireFeature(features.flake8) | 323 | try: |
317 | 324 | except (SyntaxError, NameError): | 324 | from flake8.api.legacy import get_style_guide |
318 | 325 | # importlib_metadata uses ModuleNotFoundError, which is | 325 | from flake8.main.options import JobsArgument |
319 | 326 | # python 3.6 only | 326 | from flake8.formatting.default import Default |
320 | 327 | if sys.version_info[:2] <= (3, 5): | 327 | |
321 | 328 | self.skipTest('python version too old') | 328 | style = get_style_guide(jobs=JobsArgument("1")) |
322 | 329 | raise | 329 | except Exception as e: |
285 | 330 | # Older versions of flake8 don't support the 'paths' | ||
286 | 331 | # variable | ||
287 | 332 | new_path = list(sys.path) | ||
288 | 333 | new_path.insert( | ||
289 | 334 | 0, os.path.join(os.path.dirname(__file__), '..', '..', 'tools')) | ||
290 | 335 | self.overrideAttr(sys, 'path', new_path) | ||
291 | 336 | import argparse | ||
292 | 337 | from flake8.main.application import Application | ||
293 | 338 | from flake8.formatting.base import BaseFormatter | ||
294 | 339 | app = Application() | ||
295 | 340 | app.config = u'setup.cfg' | ||
296 | 341 | app.jobs = 1 | ||
297 | 342 | |||
298 | 343 | class Formatter(BaseFormatter): | ||
299 | 344 | |||
300 | 345 | def __init__(self): | ||
301 | 346 | self.errors = [] | ||
302 | 347 | |||
303 | 348 | def start(self): | ||
304 | 349 | pass | ||
305 | 350 | |||
306 | 351 | def stop(self): | ||
307 | 352 | app.file_checker_manager.report() | ||
308 | 353 | |||
309 | 354 | def handle(self, error): | ||
310 | 355 | self.errors.append(error) | ||
311 | 356 | |||
312 | 357 | try: | ||
313 | 358 | app.initialize([]) | ||
314 | 359 | except argparse.ArgumentError as e: | ||
323 | 360 | self.skipTest('broken flake8: %r' % e) | 330 | self.skipTest('broken flake8: %r' % e) |
328 | 361 | app.formatter = Formatter() | 331 | |
329 | 362 | app.run_checks() | 332 | with self.text_log_file() as log_file: |
330 | 363 | app.report() | 333 | |
331 | 364 | self.assertEqual(app.formatter.errors, []) | 334 | class Formatter(Default): |
332 | 335 | |||
333 | 336 | def after_init(self): | ||
334 | 337 | self.output_fd = log_file | ||
335 | 338 | |||
336 | 339 | style.init_report(Formatter) | ||
337 | 340 | report = style.check_files() | ||
338 | 341 | |||
339 | 342 | self.assertEqual(report.total_errors, 0) | ||
340 | 365 | 343 | ||
341 | 366 | def test_no_asserts(self): | 344 | def test_no_asserts(self): |
342 | 367 | """bzr shouldn't use the 'assert' statement.""" | 345 | """bzr shouldn't use the 'assert' statement.""" |
343 | 368 | 346 | ||
344 | === modified file 'setup.cfg' | |||
345 | --- setup.cfg 2018-11-20 23:50:57 +0000 | |||
346 | +++ setup.cfg 2021-08-21 13:33:23 +0000 | |||
347 | @@ -2,10 +2,11 @@ | |||
348 | 2 | # Ignore E402 ("module level import not at top of file"), | 2 | # Ignore E402 ("module level import not at top of file"), |
349 | 3 | # because even with the lazy import plugin it still triggers | 3 | # because even with the lazy import plugin it still triggers |
350 | 4 | # for lazy_import statements before other imports. | 4 | # for lazy_import statements before other imports. |
351 | 5 | exclude = .git,__pycache__,build,dist,target | ||
352 | 5 | ignore = | 6 | ignore = |
353 | 6 | D | 7 | D |
354 | 7 | I | 8 | I |
356 | 8 | E123 | 9 | E12 |
357 | 9 | E261 | 10 | E261 |
358 | 10 | E265 | 11 | E265 |
359 | 11 | E266 | 12 | E266 |
360 | @@ -31,10 +32,11 @@ | |||
361 | 31 | F812 | 32 | F812 |
362 | 32 | F821 | 33 | F821 |
363 | 33 | F841 | 34 | F841 |
364 | 35 | W391 | ||
365 | 34 | W503 | 36 | W503 |
366 | 35 | W504 | 37 | W504 |
367 | 36 | W605 | 38 | W605 |
369 | 37 | filename = *.py,brz | 39 | filename = *.py |
370 | 38 | 40 | ||
371 | 39 | [flake8:local-plugins] | 41 | [flake8:local-plugins] |
372 | 40 | extension = | 42 | extension = |
373 | 41 | 43 | ||
374 | === removed directory 'src' |