38 lines
992 B
Bash
Executable file
38 lines
992 B
Bash
Executable file
#!/bin/sh
|
|
set -e
|
|
|
|
TESTDIR="$(readlink -f "$(dirname "$0")")"
|
|
. "$TESTDIR/framework"
|
|
setupenvironment
|
|
configarchitecture "i386"
|
|
confighashes 'MD5' 'SHA1' 'SHA256' 'SHA512'
|
|
|
|
msgtest 'Test apt-ftparchive source with missing hashes in .dsc'
|
|
|
|
touch aptarchive/foo_1.0.tar.gz
|
|
cat > aptarchive/foo_1.0.dsc << EOF
|
|
Format: 3.0 (native)
|
|
Source: foo
|
|
Binary: foo
|
|
Architecture: all
|
|
Version: 1.0
|
|
Package-List:
|
|
foo deb admin extra
|
|
Files:
|
|
d41d8cd98f00b204e9800998ecf8427e 0 foo_1.0.tar.gz
|
|
EOF
|
|
|
|
# check for the SHA hashes
|
|
testsuccess aptftparchive sources aptarchive/
|
|
cp rootdir/tmp/testsuccess.output aptarchive/Sources
|
|
testsuccess grep Checksums-Sha512 aptarchive/Sources
|
|
|
|
for hash in sha512sum sha256sum sha1sum; do
|
|
for f in foo_1.0.tar.gz foo_1.0.dsc; do
|
|
SUM=$($hash aptarchive/$f | cut -d' ' -f1)
|
|
NEEDLE="$SUM $(stat -c%s aptarchive/$f) $f"
|
|
testsuccess test -n "$SUM"
|
|
msgtest "Test $hash hash matches for $f"
|
|
testsuccess --nomsg grep "$NEEDLE" aptarchive/Sources
|
|
done
|
|
done
|