mirror of
https://github.com/git/git
synced 2024-08-27 11:39:22 +00:00
t5004: require 64-bit support for big ZIP tests
Check if unzip supports the ZIP64 format and skip the tests that create big archives otherwise. Also skip the test that archives a big file on 32-bit platforms because the git object systems can't unpack files bigger than 4GB there. Reported-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
ebdfa294c9
commit
867e40ff3a
|
@ -27,6 +27,9 @@ check_dir() {
|
||||||
test_cmp expect actual
|
test_cmp expect actual
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test_lazy_prereq UNZIP_ZIP64_SUPPORT '
|
||||||
|
"$GIT_UNZIP" -v | grep ZIP64_SUPPORT
|
||||||
|
'
|
||||||
|
|
||||||
# bsdtar/libarchive versions before 3.1.3 consider a tar file with a
|
# bsdtar/libarchive versions before 3.1.3 consider a tar file with a
|
||||||
# global pax header that is not followed by a file record as corrupt.
|
# global pax header that is not followed by a file record as corrupt.
|
||||||
|
@ -155,7 +158,8 @@ test_expect_success ZIPINFO 'zip archive with many entries' '
|
||||||
test_cmp expect actual
|
test_cmp expect actual
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success EXPENSIVE,UNZIP 'zip archive bigger than 4GB' '
|
test_expect_success EXPENSIVE,UNZIP,UNZIP_ZIP64_SUPPORT \
|
||||||
|
'zip archive bigger than 4GB' '
|
||||||
# build string containing 65536 characters
|
# build string containing 65536 characters
|
||||||
s=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef &&
|
s=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef &&
|
||||||
s=$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s &&
|
s=$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s &&
|
||||||
|
@ -178,7 +182,8 @@ test_expect_success EXPENSIVE,UNZIP 'zip archive bigger than 4GB' '
|
||||||
"$GIT_UNZIP" -t many-big.zip
|
"$GIT_UNZIP" -t many-big.zip
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success EXPENSIVE,UNZIP,ZIPINFO 'zip archive with files bigger than 4GB' '
|
test_expect_success EXPENSIVE,LONG_IS_64BIT,UNZIP,UNZIP_ZIP64_SUPPORT,ZIPINFO \
|
||||||
|
'zip archive with files bigger than 4GB' '
|
||||||
# Pack created with:
|
# Pack created with:
|
||||||
# dd if=/dev/zero of=file bs=1M count=4100 && git hash-object -w file
|
# dd if=/dev/zero of=file bs=1M count=4100 && git hash-object -w file
|
||||||
mkdir -p .git/objects/pack &&
|
mkdir -p .git/objects/pack &&
|
||||||
|
|
Loading…
Reference in a new issue