summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/archivetestdata/README.md (renamed from Lib/test/ziptestdata/README.md)15
-rwxr-xr-xLib/test/archivetestdata/exe_with_z64 (renamed from Lib/test/ziptestdata/exe_with_z64)bin978 -> 978 bytes
-rwxr-xr-xLib/test/archivetestdata/exe_with_zip (renamed from Lib/test/ziptestdata/exe_with_zip)bin990 -> 990 bytes
-rwxr-xr-xLib/test/archivetestdata/header.sh (renamed from Lib/test/ziptestdata/header.sh)0
-rw-r--r--Lib/test/archivetestdata/recursion.tar (renamed from Lib/test/recursion.tar)bin516 -> 516 bytes
-rw-r--r--Lib/test/archivetestdata/testdata_module_inside_zip.py (renamed from Lib/test/ziptestdata/testdata_module_inside_zip.py)0
-rw-r--r--Lib/test/archivetestdata/testtar.tar (renamed from Lib/test/testtar.tar)bin435200 -> 435200 bytes
-rw-r--r--Lib/test/archivetestdata/testtar.tar.xz (renamed from Lib/test/testtar.tar.xz)bin172 -> 172 bytes
-rw-r--r--Lib/test/archivetestdata/zip_cp437_header.zip (renamed from Lib/test/zip_cp437_header.zip)bin270 -> 270 bytes
-rw-r--r--Lib/test/archivetestdata/zipdir.zip (renamed from Lib/test/zipdir.zip)bin374 -> 374 bytes
-rw-r--r--Lib/test/test_contextlib.py2
-rw-r--r--Lib/test/test_tarfile.py12
-rw-r--r--Lib/test/test_zipfile/test_core.py14
13 files changed, 22 insertions, 21 deletions
diff --git a/Lib/test/ziptestdata/README.md b/Lib/test/archivetestdata/README.md
index 00d96d4..7b555fa 100644
--- a/Lib/test/ziptestdata/README.md
+++ b/Lib/test/archivetestdata/README.md
@@ -1,21 +1,23 @@
-# Test data for `test_zipfile`
+# Test data for `test_zipfile`, `test_tarfile` (and even some others)
-The test executables in this directory are created manually from header.sh and
+## `test_zipfile`
+
+The test executables in this directory are created manually from `header.sh` and
the `testdata_module_inside_zip.py` file. You must have Info-ZIP's zip utility
installed (`apt install zip` on Debian).
-## Purpose
+### Purpose of `exe_with_zip` and `exe_with_z64`
These are used to test executable files with an appended zipfile, in a scenario
where the executable is _not_ a Python interpreter itself so our automatic
zipimport machinery (that'd look for `__main__.py`) is not being used.
-## Updating the test executables
+### Updating the test executables
If you update header.sh or the testdata_module_inside_zip.py file, rerun the
commands below. These are expected to be rarely changed, if ever.
-### Standard old format (2.0) zip file
+#### Standard old format (2.0) zip file
```
zip -0 zip2.zip testdata_module_inside_zip.py
@@ -23,7 +25,7 @@ cat header.sh zip2.zip >exe_with_zip
rm zip2.zip
```
-### Modern format (4.5) zip64 file
+#### Modern format (4.5) zip64 file
Redirecting from stdin forces Info-ZIP's zip tool to create a zip64.
@@ -32,4 +34,3 @@ zip -0 <testdata_module_inside_zip.py >zip64.zip
cat header.sh zip64.zip >exe_with_z64
rm zip64.zip
```
-
diff --git a/Lib/test/ziptestdata/exe_with_z64 b/Lib/test/archivetestdata/exe_with_z64
index 82b03cf..82b03cf 100755
--- a/Lib/test/ziptestdata/exe_with_z64
+++ b/Lib/test/archivetestdata/exe_with_z64
Binary files differ
diff --git a/Lib/test/ziptestdata/exe_with_zip b/Lib/test/archivetestdata/exe_with_zip
index c833cdf..c833cdf 100755
--- a/Lib/test/ziptestdata/exe_with_zip
+++ b/Lib/test/archivetestdata/exe_with_zip
Binary files differ
diff --git a/Lib/test/ziptestdata/header.sh b/Lib/test/archivetestdata/header.sh
index 52dc91a..52dc91a 100755
--- a/Lib/test/ziptestdata/header.sh
+++ b/Lib/test/archivetestdata/header.sh
diff --git a/Lib/test/recursion.tar b/Lib/test/archivetestdata/recursion.tar
index b823725..b823725 100644
--- a/Lib/test/recursion.tar
+++ b/Lib/test/archivetestdata/recursion.tar
Binary files differ
diff --git a/Lib/test/ziptestdata/testdata_module_inside_zip.py b/Lib/test/archivetestdata/testdata_module_inside_zip.py
index 6f8dcd6..6f8dcd6 100644
--- a/Lib/test/ziptestdata/testdata_module_inside_zip.py
+++ b/Lib/test/archivetestdata/testdata_module_inside_zip.py
diff --git a/Lib/test/testtar.tar b/Lib/test/archivetestdata/testtar.tar
index bb93453..bb93453 100644
--- a/Lib/test/testtar.tar
+++ b/Lib/test/archivetestdata/testtar.tar
Binary files differ
diff --git a/Lib/test/testtar.tar.xz b/Lib/test/archivetestdata/testtar.tar.xz
index 512fa14..512fa14 100644
--- a/Lib/test/testtar.tar.xz
+++ b/Lib/test/archivetestdata/testtar.tar.xz
Binary files differ
diff --git a/Lib/test/zip_cp437_header.zip b/Lib/test/archivetestdata/zip_cp437_header.zip
index f7c6cf1..f7c6cf1 100644
--- a/Lib/test/zip_cp437_header.zip
+++ b/Lib/test/archivetestdata/zip_cp437_header.zip
Binary files differ
diff --git a/Lib/test/zipdir.zip b/Lib/test/archivetestdata/zipdir.zip
index ac21d7a..ac21d7a 100644
--- a/Lib/test/zipdir.zip
+++ b/Lib/test/archivetestdata/zipdir.zip
Binary files differ
diff --git a/Lib/test/test_contextlib.py b/Lib/test/test_contextlib.py
index 3dad256..e32a091 100644
--- a/Lib/test/test_contextlib.py
+++ b/Lib/test/test_contextlib.py
@@ -1318,7 +1318,7 @@ class TestChdir(unittest.TestCase):
def test_reentrant(self):
old_cwd = os.getcwd()
target1 = self.make_relative_path('data')
- target2 = self.make_relative_path('ziptestdata')
+ target2 = self.make_relative_path('archivetestdata')
self.assertNotIn(old_cwd, (target1, target2))
chdir1, chdir2 = chdir(target1), chdir(target2)
diff --git a/Lib/test/test_tarfile.py b/Lib/test/test_tarfile.py
index cc26da0..761560b 100644
--- a/Lib/test/test_tarfile.py
+++ b/Lib/test/test_tarfile.py
@@ -43,7 +43,7 @@ def sha256sum(data):
TEMPDIR = os.path.abspath(os_helper.TESTFN) + "-tardir"
tarextdir = TEMPDIR + '-extract-test'
-tarname = support.findfile("testtar.tar")
+tarname = support.findfile("testtar.tar", subdir="archivetestdata")
gzipname = os.path.join(TEMPDIR, "testtar.tar.gz")
bz2name = os.path.join(TEMPDIR, "testtar.tar.bz2")
xzname = os.path.join(TEMPDIR, "testtar.tar.xz")
@@ -491,7 +491,7 @@ class CommonReadTest(ReadTest):
# bpo-39017 (CVE-2019-20907): reading a zero-length header should fail
# with an exception
with self.assertRaisesRegex(tarfile.ReadError, "file could not be opened successfully"):
- with tarfile.open(support.findfile('recursion.tar')) as tar:
+ with tarfile.open(support.findfile('recursion.tar', subdir='archivetestdata')):
pass
def test_extractfile_name(self):
@@ -2565,7 +2565,7 @@ class MiscTest(unittest.TestCase):
support.check__all__(self, tarfile, not_exported=not_exported)
def test_useful_error_message_when_modules_missing(self):
- fname = os.path.join(os.path.dirname(__file__), 'testtar.tar.xz')
+ fname = os.path.join(os.path.dirname(__file__), 'archivetestdata', 'testtar.tar.xz')
with self.assertRaises(tarfile.ReadError) as excinfo:
error = tarfile.CompressionError('lzma module is not available'),
with unittest.mock.patch.object(tarfile.TarFile, 'xzopen', side_effect=error):
@@ -2630,7 +2630,7 @@ class CommandLineTest(unittest.TestCase):
self.assertIn(b'is a tar archive.\n', out)
def test_test_command_invalid_file(self):
- zipname = support.findfile('zipdir.zip')
+ zipname = support.findfile('zipdir.zip', subdir='archivetestdata')
rc, out, err = self.tarfilecmd_failure('-t', zipname)
self.assertIn(b' is not a tar archive.', err)
self.assertEqual(out, b'')
@@ -2672,7 +2672,7 @@ class CommandLineTest(unittest.TestCase):
self.assertEqual(out, expected)
def test_list_command_invalid_file(self):
- zipname = support.findfile('zipdir.zip')
+ zipname = support.findfile('zipdir.zip', subdir='archivetestdata')
rc, out, err = self.tarfilecmd_failure('-l', zipname)
self.assertIn(b' is not a tar archive.', err)
self.assertEqual(out, b'')
@@ -2797,7 +2797,7 @@ class CommandLineTest(unittest.TestCase):
os_helper.rmtree(tarextdir)
def test_extract_command_invalid_file(self):
- zipname = support.findfile('zipdir.zip')
+ zipname = support.findfile('zipdir.zip', subdir='archivetestdata')
with os_helper.temp_cwd(tarextdir):
rc, out, err = self.tarfilecmd_failure('-e', zipname)
self.assertIn(b' is not a tar archive.', err)
diff --git a/Lib/test/test_zipfile/test_core.py b/Lib/test/test_zipfile/test_core.py
index fb6b0b3..a51764b 100644
--- a/Lib/test/test_zipfile/test_core.py
+++ b/Lib/test/test_zipfile/test_core.py
@@ -1754,7 +1754,7 @@ class OtherTests(unittest.TestCase):
@requires_zlib()
def test_read_unicode_filenames(self):
# bug #10801
- fname = findfile('zip_cp437_header.zip')
+ fname = findfile('zip_cp437_header.zip', subdir='archivetestdata')
with zipfile.ZipFile(fname) as zipfp:
for name in zipfp.namelist():
zipfp.open(name).close()
@@ -2804,7 +2804,7 @@ class TestWithDirectory(unittest.TestCase):
os.mkdir(TESTFN2)
def test_extract_dir(self):
- with zipfile.ZipFile(findfile("zipdir.zip")) as zipf:
+ with zipfile.ZipFile(findfile("zipdir.zip", subdir="archivetestdata")) as zipf:
zipf.extractall(TESTFN2)
self.assertTrue(os.path.isdir(os.path.join(TESTFN2, "a")))
self.assertTrue(os.path.isdir(os.path.join(TESTFN2, "a", "b")))
@@ -2973,7 +2973,7 @@ class CommandLineTest(unittest.TestCase):
self.assertNotEqual(err.strip(), b'')
def test_test_command(self):
- zip_name = findfile('zipdir.zip')
+ zip_name = findfile('zipdir.zip', subdir='archivetestdata')
for opt in '-t', '--test':
out = self.zipfilecmd(opt, zip_name)
self.assertEqual(out.rstrip(), b'Done testing')
@@ -2982,7 +2982,7 @@ class CommandLineTest(unittest.TestCase):
self.assertEqual(out, b'')
def test_list_command(self):
- zip_name = findfile('zipdir.zip')
+ zip_name = findfile('zipdir.zip', subdir='archivetestdata')
t = io.StringIO()
with zipfile.ZipFile(zip_name, 'r') as tf:
tf.printdir(t)
@@ -3015,7 +3015,7 @@ class CommandLineTest(unittest.TestCase):
unlink(TESTFN2)
def test_extract_command(self):
- zip_name = findfile('zipdir.zip')
+ zip_name = findfile('zipdir.zip', subdir='archivetestdata')
for opt in '-e', '--extract':
with temp_dir() as extdir:
out = self.zipfilecmd(opt, zip_name, extdir)
@@ -3036,8 +3036,8 @@ class TestExecutablePrependedZip(unittest.TestCase):
"""Test our ability to open zip files with an executable prepended."""
def setUp(self):
- self.exe_zip = findfile('exe_with_zip', subdir='ziptestdata')
- self.exe_zip64 = findfile('exe_with_z64', subdir='ziptestdata')
+ self.exe_zip = findfile('exe_with_zip', subdir='archivetestdata')
+ self.exe_zip64 = findfile('exe_with_z64', subdir='archivetestdata')
def _test_zip_works(self, name):
# bpo28494 sanity check: ensure is_zipfile works on these.