test_modulefinder always modifies execution environment · Issue #93616 · python/cpython (original) (raw)
Bug report
test_modulefinder
creates a temporary directory in its global module scope
TEST_DIR = tempfile.mkdtemp() |
---|
TEST_PATH = [TEST_DIR, os.path.dirname(tempfile.__file__)] |
and removes the temporary directory in each test method
finally: |
---|
shutil.rmtree(TEST_DIR) |
If the test is executed in an environment without test worker processes (e.g. WASI) then the test runner complains about changes to the execution environment:
/python-wasm/cpython/builddir/wasi# wasmtime run --mapdir .::../../ -- python.wasm -m test --fail-env-changed test_modulefinder
0:00:00 Run tests sequentially
0:00:00 [1/1] test_modulefinder
Warning -- files was modified by test_modulefinder
Warning -- Before: ['tmp8avdrxn0/']
Warning -- After: []
test_modulefinder failed (env changed)
== Tests result: ENV CHANGED ==
1 test altered the execution environment:
test_modulefinder
Total duration: 292 ms
Tests result: ENV CHANGED
test_modulefinder
should create the temporary directory in setUp and rmtree it in tearDown methods instead.