diff options
| author | Jason R. Coombs <jaraco@jaraco.com> | 2021-11-10 12:12:49 -0500 |
|---|---|---|
| committer | Jason R. Coombs <jaraco@jaraco.com> | 2021-11-10 12:13:40 -0500 |
| commit | 958ce2304e153b274e2ff7b40b1e7d5ddd214904 (patch) | |
| tree | bb1b77cfc08c31fb69eebdb0c66f5c0dde3f5223 /setuptools/tests/test_archive_util.py | |
| parent | 23f63dd44c5d9f75de195833d25a5f2872220c2b (diff) | |
| parent | 8af23a41194ae747faf3e60f9cc19141b5e7ad24 (diff) | |
| download | python-setuptools-git-958ce2304e153b274e2ff7b40b1e7d5ddd214904.tar.gz | |
Merge pull request #2866 into main.
Diffstat (limited to 'setuptools/tests/test_archive_util.py')
| -rw-r--r-- | setuptools/tests/test_archive_util.py | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/setuptools/tests/test_archive_util.py b/setuptools/tests/test_archive_util.py new file mode 100644 index 00000000..7f996244 --- /dev/null +++ b/setuptools/tests/test_archive_util.py @@ -0,0 +1,38 @@ +# coding: utf-8 + +import tarfile +import io + +import pytest + +from setuptools import archive_util + + +@pytest.fixture +def tarfile_with_unicode(tmpdir): + """ + Create a tarfile containing only a file whose name is + a zero byte file called testimàˆge.png. + """ + tarobj = io.BytesIO() + + with tarfile.open(fileobj=tarobj, mode="w:gz") as tgz: + data = b"" + + filename = "testimàˆge.png" + + t = tarfile.TarInfo(filename) + t.size = len(data) + + tgz.addfile(t, io.BytesIO(data)) + + target = tmpdir / 'unicode-pkg-1.0.tar.gz' + with open(str(target), mode='wb') as tf: + tf.write(tarobj.getvalue()) + return str(target) + + +@pytest.mark.xfail(reason="#710 and #712") +def test_unicode_files(tarfile_with_unicode, tmpdir): + target = tmpdir / 'out' + archive_util.unpack_archive(tarfile_with_unicode, str(target)) |
