gh-126014: test_makefile_test_folders: Ignore basically-empty directories (#140466)

The code in test_makefile was attempting to ignore any
non-interesting files, but missed some corners:

1. There is never a *file* called `__pycache__`.
2. A directory containing only a `__pycache__` subdirectory should be
   ignored.
3. A directory containing only hidden files should be ignored.

Simplify this all into a couple of filters that let us check for empty
lists.
This commit is contained in:
Stefano Rivera 2026-01-27 02:05:09 -08:00 committed by GitHub
parent 487bd2dea5
commit 17d447e993
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -48,15 +48,18 @@ def test_makefile_test_folders(self):
if dirname == '__pycache__' or dirname.startswith('.'):
dirs.clear() # do not process subfolders
continue
# Skip empty dirs:
# Skip empty dirs (ignoring hidden files and __pycache__):
files = [
filename for filename in files
if not filename.startswith('.')
]
dirs = [
dirname for dirname in dirs
if not dirname.startswith('.') and dirname != "__pycache__"
]
if not dirs and not files:
continue
# Skip dirs with hidden-only files:
if files and all(
filename.startswith('.') or filename == '__pycache__'
for filename in files
):
continue
relpath = os.path.relpath(dirpath, support.STDLIB_DIR)
with self.subTest(relpath=relpath):