mirror of
https://github.com/python/cpython.git
synced 2025-08-31 05:58:33 +00:00
Closes #14158: improved resilience to test files left behind.
This commit is contained in:
parent
4d2bfb5e08
commit
f959618142
3 changed files with 33 additions and 11 deletions
|
@ -677,10 +677,10 @@ def main(tests=None, testdir=None, verbose=0, quiet=False,
|
|||
if bad:
|
||||
print(count(len(bad), "test"), "failed:")
|
||||
printlist(bad)
|
||||
if environment_changed:
|
||||
print("{} altered the execution environment:".format(
|
||||
count(len(environment_changed), "test")))
|
||||
printlist(environment_changed)
|
||||
if environment_changed:
|
||||
print("{} altered the execution environment:".format(
|
||||
count(len(environment_changed), "test")))
|
||||
printlist(environment_changed)
|
||||
if skipped and not quiet:
|
||||
print(count(len(skipped), "test"), "skipped:")
|
||||
printlist(skipped)
|
||||
|
@ -890,7 +890,9 @@ class saved_test_environment:
|
|||
'logging._handlers', 'logging._handlerList',
|
||||
'shutil.archive_formats', 'shutil.unpack_formats',
|
||||
'sys.warnoptions', 'threading._dangling',
|
||||
'multiprocessing.process._dangling')
|
||||
'multiprocessing.process._dangling',
|
||||
'support.TESTFN',
|
||||
)
|
||||
|
||||
def get_sys_argv(self):
|
||||
return id(sys.argv), sys.argv, sys.argv[:]
|
||||
|
@ -1020,6 +1022,21 @@ class saved_test_environment:
|
|||
multiprocessing.process._dangling.clear()
|
||||
multiprocessing.process._dangling.update(saved)
|
||||
|
||||
def get_support_TESTFN(self):
|
||||
if os.path.isfile(support.TESTFN):
|
||||
result = 'f'
|
||||
elif os.path.isdir(support.TESTFN):
|
||||
result = 'd'
|
||||
else:
|
||||
result = None
|
||||
return result
|
||||
def restore_support_TESTFN(self, saved_value):
|
||||
if saved_value is None:
|
||||
if os.path.isfile(support.TESTFN):
|
||||
os.unlink(support.TESTFN)
|
||||
elif os.path.isdir(support.TESTFN):
|
||||
shutil.rmtree(support.TESTFN)
|
||||
|
||||
def resource_info(self):
|
||||
for name in self.resources:
|
||||
method_suffix = name.replace('.', '_')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue