@@ -179,45 +179,45 @@ def pytest_collectreport(self, report):
179
179
self .lastfailed [report .nodeid ] = True
180
180
181
181
def pytest_collection_modifyitems (self , session , config , items ):
182
- if self .active :
183
- if self .lastfailed :
184
- previously_failed = []
185
- previously_passed = []
186
- for item in items :
187
- if item .nodeid in self .lastfailed :
188
- previously_failed .append (item )
189
- else :
190
- previously_passed .append (item )
191
- self ._previously_failed_count = len (previously_failed )
192
-
193
- if not previously_failed :
194
- # Running a subset of all tests with recorded failures
195
- # only outside of it.
196
- self ._report_status = "%d known failures not in selected tests" % (
197
- len (self .lastfailed ),
198
- )
182
+ if not self .active :
183
+ return
184
+
185
+ if self .lastfailed :
186
+ previously_failed = []
187
+ previously_passed = []
188
+ for item in items :
189
+ if item .nodeid in self .lastfailed :
190
+ previously_failed .append (item )
199
191
else :
200
- if self .config .getoption ("lf" ):
201
- items [:] = previously_failed
202
- config .hook .pytest_deselected (items = previously_passed )
203
- else : # --failedfirst
204
- items [:] = previously_failed + previously_passed
205
-
206
- noun = (
207
- "failure" if self ._previously_failed_count == 1 else "failures"
208
- )
209
- suffix = " first" if self .config .getoption ("failedfirst" ) else ""
210
- self ._report_status = "rerun previous {count} {noun}{suffix}" .format (
211
- count = self ._previously_failed_count , suffix = suffix , noun = noun
212
- )
192
+ previously_passed .append (item )
193
+ self ._previously_failed_count = len (previously_failed )
194
+
195
+ if not previously_failed :
196
+ # Running a subset of all tests with recorded failures
197
+ # only outside of it.
198
+ self ._report_status = "%d known failures not in selected tests" % (
199
+ len (self .lastfailed ),
200
+ )
213
201
else :
214
- self ._report_status = "no previously failed tests, "
215
- if self .config .getoption ("last_failed_no_failures" ) == "none" :
216
- self ._report_status += "deselecting all items."
217
- config .hook .pytest_deselected (items = items )
218
- items [:] = []
219
- else :
220
- self ._report_status += "not deselecting items."
202
+ if self .config .getoption ("lf" ):
203
+ items [:] = previously_failed
204
+ config .hook .pytest_deselected (items = previously_passed )
205
+ else : # --failedfirst
206
+ items [:] = previously_failed + previously_passed
207
+
208
+ noun = "failure" if self ._previously_failed_count == 1 else "failures"
209
+ suffix = " first" if self .config .getoption ("failedfirst" ) else ""
210
+ self ._report_status = "rerun previous {count} {noun}{suffix}" .format (
211
+ count = self ._previously_failed_count , suffix = suffix , noun = noun
212
+ )
213
+ else :
214
+ self ._report_status = "no previously failed tests, "
215
+ if self .config .getoption ("last_failed_no_failures" ) == "none" :
216
+ self ._report_status += "deselecting all items."
217
+ config .hook .pytest_deselected (items = items )
218
+ items [:] = []
219
+ else :
220
+ self ._report_status += "not deselecting items."
221
221
222
222
def pytest_sessionfinish (self , session ):
223
223
config = self .config
0 commit comments