8000 [WIP] bpo-37421: regrtest detects if a test leaks temporary files by vstinner · Pull Request #14415 · python/cpython · GitHub
[go: up one dir, main page]

Skip to content

[WIP] bpo-37421: regrtest detects if a test leaks temporary files #14415

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed

[WIP] bpo-37421: regrtest detects if a test leaks temporary files #14415

wants to merge 1 commit into from

Conversation

vstinner
Copy link
Member
@vstinner vstinner commented Jun 26, 2019

@vstinner
Copy link
Member Author
vstinner commented Jul 2, 2019

I rebased my PR to get other https://bugs.python.org/issue37421 fixes.

@vstinner
Copy link
Member Author
vstinner commented Jul 2, 2019

test_concurrent_futures, test_multiprocessing_fork and test_multiprocessing_spawn failed on the Linux job of Travis CI, with errors like:

ERROR: test_socket_fileno (test.test_socket.GeneralModuleTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/build/python/cpython/Lib/test/test_socket.py", line 1834, in test_socket_fileno
    s.bind(os.path.join(tmpdir, 'socket'))
OSError: AF_UNIX path too long

test_concurrent_futures failed with "1 test altered the execution environment" on the Ubuntu job of Azure Pipelines:

Warning -- tmpdir was modified by test_concurrent_futures
  Before: []
  After:  ['pymp-f8efn6z8'] 
Traceback (most recent call last):
  File "/home/vsts/work/1/s/Lib/multiprocessing/util.py", line 265, in _run_finalizers
    finalizer()
  File "/home/vsts/work/1/s/Lib/multiprocessing/util.py", line 189, in __call__
    res = self._callback(*self._args, **self._kwargs)
  File "/home/vsts/work/1/s/Lib/shutil.py", line 660, in rmtree
    onerror(os.lstat, path, sys.exc_info())
  File "/home/vsts/work/1/s/Lib/shutil.py", line 658, in rmtree
    orig_st = os.lstat(path)
FileNotFoundError: [Errno 2] No such file or directory: '/home/vsts/work/1/s/build/test_python_27082/test_python_worker_29853/tmpdir/pymp-f8efn6z8'

@vstinner
Copy link
Member Author
vstinner commented Jul 2, 2019

win64 job of Azure Pipelines failed with:

1 test failed:
    test_os

2 tests altered the execution environment:
    test_distutils test_winconsoleio

Warning -- tmpdir was modified by test_winconsoleio
  Before: []
  After:  ['tmp2wme2jy5']

Warning -- tmpdir was modified by test_distutils
  Before: []
  After:  ['tmpu_zkofwq']

======================================================================
ERROR: test_bytes (test.test_os.ReadlinkTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\a\1\s\lib\test\support\__init__.py", line 438, in unlink
    _unlink(filename)
  File "D:\a\1\s\lib\test\support\__init__.py", line 371, in _unlink
    _waitfor(os.unlink, filename)
  File "D:\a\1\s\lib\test\support\__init__.py", line 362, in _waitfor
    if not (L if waitall else name in L):
BytesWarning: Comparison between bytes and string

======================================================================
ERROR: test_pathlike_bytes (test.test_os.ReadlinkTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\a\1\s\lib\test\support\__init__.py", line 438, in unlink
    _unlink(filename)
  File "D:\a\1\s\lib\test\support\__init__.py", line 371, in _unlink
    _waitfor(os.unlink, filename)
  File "D:\a\1\s\lib\test\support\__init__.py", line 362, in _waitfor
    if not (L if waitall else name in L):
BytesWarning: Comparison between bytes and string

@vstinner
Copy link
Member Author
vstinner commented Jul 3, 2019

I rebased again this PR to get the 3 other fixes. Remaining issue on Windows:

linkTests) ... test test_os failed
skipped 'currently fails; consider for improvement'
======================================================================
ERROR: test_bytes (test.test_os.ReadlinkTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\projects\cpython\lib\test\support\__init__.py", line 438, in unlink
    _unlink(filename)
  File "C:\projects\cpython\lib\test\support\__init__.py", line 371, in _unlink
    _waitfor(os.unlink, filename)
  File "C:\projects\cpython\lib\test\support\__init__.py", line 362, in _waitfor
    if not (L if waitall else name in L):
BytesWarning: Comparison between bytes and string
======================================================================
ERROR: test_pathlike_bytes (test.test_os.ReadlinkTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\projects\cpython\lib\test\support\__init__.py", line 438, in unlink
    _unlink(filename)
  File "C:\projects\cpython\lib\test\support\__init__.py", line 371, in _unlink
    _waitfor(os.unlink, filename)
  File "C:\projects\cpython\lib\test\support\__init__.py", line 362, in _waitfor
    if not (L if waitall else name in L):
BytesWarning: Comparison between bytes and string
----------------------------------------------------------------------

Again, the Linux job of Travis CI failed with errors like:

======================================================================
ERROR: test_socket_fileno (test.test_socket.GeneralModuleTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/build/python/cpython/Lib/test/test_socket.py", line 1834, in test_socket_fileno
    s.bind(os.path.join(tmpdir, 'socket'))
OSError: AF_UNIX path too long

@brettcannon brettcannon added the type-feature A feature request or enhancement label Jul 5, 2019
@vstinner
Copy link
Member Author
vstinner commented Jul 8, 2019

This change causes issues. I'm not sure it's worth it to automate checking for temporary files. I close this PR.

@vstinner vstinner closed this Jul 8, 2019
@vstinner vstinner deleted the regrtest_tmpdir branch July 8, 2019 22:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants
0