Vajrasky Kok added the comment:
Okay, here is the problem. In Windows, you get DeprecationWarning if you pass
bytes object to method such as os.lstat.
foo.py
======
import os
os.lstat(b"C:\\Users\\vajrasky\\Code\\cpython\\python.bat")
C:\Users\vajrasky\Code\cpython>python.bat -Wdefault foo.py
foo.py:2: DeprecationWarning: The Windows bytes API has been deprecated, use
Unicode filenames instead
os.lstat(b"C:\\Users\\vajrasky\\Code\\cpython\\python.bat")
The test that throws this error is this one:
def test_rmtree_works_on_bytes(self):
tmp = self.mkdtemp()
victim = os.path.join(tmp, 'killme')
os.mkdir(victim)
write_file(os.path.join(victim, 'somefile'), 'foo')
victim = os.fsencode(victim)
self.assertIsInstance(victim, bytes)
shutil.rmtree(victim) => This one calls os.lstat
So I am not sure how to fix this problem. Disable the test for Windows? If we
convert the path to Unicode then the test losses the meaning.
----------
versions: +Python 3.5 -Python 3.3
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue20056>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com