android13/external/python/cpython3/Lib/test/ziptestdata
liiir1985 7f62dcda9f initial 2024-06-22 20:45:49 +08:00
..
README.md initial 2024-06-22 20:45:49 +08:00
exe_with_z64 initial 2024-06-22 20:45:49 +08:00
exe_with_zip initial 2024-06-22 20:45:49 +08:00
header.sh initial 2024-06-22 20:45:49 +08:00
testdata_module_inside_zip.py initial 2024-06-22 20:45:49 +08:00

README.md

Test data for 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 infozip's zip utility installed (apt install zip on Debian).

Purpose

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

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

zip -0 zip2.zip testdata_module_inside_zip.py
cat header.sh zip2.zip >exe_with_zip
rm zip2.zip

Modern format (4.5) zip64 file

Redirecting from stdin forces infozip's zip tool to create a zip64.

zip -0 <testdata_module_inside_zip.py >zip64.zip
cat header.sh zip64.zip >exe_with_z64
rm zip64.zip