@@ -298,7 +298,7 @@ def test_find_sources_exclude(self) -> None:
298
298
}
299
299
300
300
# file name
301
- options .exclude = r"/f\.py$"
301
+ options .exclude = [ r"/f\.py$" ]
302
302
fscache = FakeFSCache (files )
303
303
assert find_sources (["/" ], options , fscache ) == [
304
304
("a2" , "/pkg" ),
@@ -309,7 +309,7 @@ def test_find_sources_exclude(self) -> None:
309
309
assert find_sources (["/pkg/a2/b/f.py" ], options , fscache ) == [('a2.b.f' , '/pkg' )]
310
310
311
311
# directory name
312
- options .exclude = "/a1/"
312
+ options .exclude = [ "/a1/" ]
313
313
fscache = FakeFSCache (files )
314
314
assert find_sources (["/" ], options , fscache ) == [
315
315
("a2" , "/pkg" ),
@@ -323,13 +323,13 @@ def test_find_sources_exclude(self) -> None:
323
323
with pytest .raises (InvalidSourceList ):
324
324
find_sources (["/pkg/a1/b" ], options , fscache )
325
325
326
- options .exclude = "/a1/$"
326
+ options .exclude = [ "/a1/$" ]
327
327
assert find_sources (["/pkg/a1" ], options , fscache ) == [
328
328
('e' , '/pkg/a1/b/c/d' ), ('f' , '/pkg/a1/b' )
329
329
]
330
330
331
331
# paths
332
- options .exclude = "/pkg/a1/"
332
+ options .exclude = [ "/pkg/a1/" ]
333
333
fscache = FakeFSCache (files )
334
334
assert find_sources (["/" ], options , fscache ) == [
335
335
("a2" , "/pkg" ),
@@ -339,15 +339,17 @@ def test_find_sources_exclude(self) -> None:
339
339
with pytest .raises (InvalidSourceList ):
340
340
find_sources (["/pkg/a1" ], options , fscache )
341
341
342
- options .exclude = "/(a1|a3)/"
343
- fscache = FakeFSCache (files )
344
- assert find_sources (["/" ], options , fscache ) == [
345
- ("a2" , "/pkg" ),
346
- ("a2.b.c.d.e" , "/pkg" ),
347
- ("a2.b.f" , "/pkg" ),
348
- ]
342
+ # OR two patterns together
343
+ for orred in [["/(a1|a3)/" ], ["a1" , "a3" ], ["a3" , "a1" ]]:
344
+ options .exclude = orred
345
+ fscache = FakeFSCache (files )
346
+ assert find_sources (["/" ], options , fscache ) == [
347
+ ("a2" , "/pkg" ),
348
+ ("a2.b.c.d.e" , "/pkg" ),
349
+ ("a2.b.f" , "/pkg" ),
350
+ ]
349
351
350
- options .exclude = "b/c/"
352
+ options .exclude = [ "b/c/" ]
351
353
fscache = FakeFSCache (files )
352
354
assert find_sources (["/" ], options , fscache ) == [
353
355
("a2" , "/pkg" ),
@@ -356,19 +358,22 @@ def test_find_sources_exclude(self) -> None:
356
358
]
357
359
358
360
# nothing should be ignored as a result of this
359
- options . exclude = "|" . join ((
361
+ big_exclude1 = [
360
362
"/pkg/a/" , "/2" , "/1" , "/pk/" , "/kg" , "/g.py" , "/bc" , "/xxx/pkg/a2/b/f.py"
361
363
"xxx/pkg/a2/b/f.py" ,
362
- ))
363
- fscache = FakeFSCache (files )
364
- assert len (find_sources (["/" ], options , fscache )) == len (files )
365
-
366
- files = {
367
- "pkg/a1/b/c/d/e.py" ,
368
- "pkg/a1/b/f.py" ,
369
- "pkg/a2/__init__.py" ,
370
- "pkg/a2/b/c/d/e.py" ,
371
- "pkg/a2/b/f.py" ,
372
- }
373
- fscache = FakeFSCache (files )
374
- assert len (find_sources (["." ], options , fscache )) == len (files )
364
+ ]
365
+ big_exclude2 = ["|" .join (big_exclude1 )]
366
+ for big_exclude in [big_exclude1 , big_exclude2 ]:
367
+ options .exclude = big_exclude
368
+ fscache = FakeFSCache (files )
369
+ assert len (find_sources (["/" ], options , fscache )) == len (files )
370
+
371
+ files = {
372
+ "pkg/a1/b/c/d/e.py" ,
373
+ "pkg/a1/b/f.py" ,
374
+ "pkg/a2/__init__.py" ,
375
+ "pkg/a2/b/c/d/e.py" ,
376
+ "pkg/a2/b/f.py" ,
377
+ }
378
+ fscache = FakeFSCache (files )
379
+ assert len (find_sources (["." ], options , fscache )) == len (files )
0 commit comments