| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- #!/bin/sh
- set -e
- TESTDIR=$(readlink -f $(dirname $0))
- . $TESTDIR/framework
- setupenvironment
- configarchitecture 'amd64'
- buildsimplenativepackage 'unrelated' 'all' '0.5~squeeze1' 'unstable'
- setupaptarchive --no-update
- changetowebserver
- runtest() {
- configallowinsecurerepositories "${1:-false}"
- rm -f rootdir/var/lib/apt/lists/localhost*
- if [ "$1" = 'true' ]; then
- testwarning aptget update
- else
- testsuccess aptget update
- fi
- # ensure no leftovers in partial
- testfailure ls "rootdir/var/lib/apt/lists/partial/*"
- # check that I-M-S header is kept in redirections
- testequal "$EXPECT" aptget update -o Debug::pkgAcquire::Worker=0 -o Debug::Acquire::http=0
-
- # ensure that we still do a hash check on ims hit
- msgtest 'Test I-M-S' 'reverify'
- aptget update -o Debug::pkgAcquire::Auth=1 2>&1 | grep -A2 'ReceivedHash:' | grep -q -- '- SHA' && msgpass || msgfail
- # ensure no leftovers in partial
- testfailure ls "rootdir/var/lib/apt/lists/partial/*"
- }
- msgmsg "InRelease"
- EXPECT="Hit http://localhost:8080 unstable InRelease
- Hit http://localhost:8080 unstable/main Sources
- Hit http://localhost:8080 unstable/main amd64 Packages
- Hit http://localhost:8080 unstable/main Translation-en
- Reading package lists..."
- # with InRelease
- runtest
- # with gzip
- echo "Acquire::GzipIndexes "1";" > rootdir/etc/apt/apt.conf.d/02compressindex
- runtest
- msgmsg "Release/Release.gpg"
- # with Release/Release.gpg
- EXPECT="Ign http://localhost:8080 unstable InRelease
- 404 Not Found
- Hit http://localhost:8080 unstable Release
- Hit http://localhost:8080 unstable Release.gpg
- Hit http://localhost:8080 unstable/main Sources
- Hit http://localhost:8080 unstable/main amd64 Packages
- Hit http://localhost:8080 unstable/main Translation-en
- Reading package lists..."
- find aptarchive -name 'InRelease' -delete
- echo "Acquire::GzipIndexes "0";" > rootdir/etc/apt/apt.conf.d/02compressindex
- runtest
- echo "Acquire::GzipIndexes "1";" > rootdir/etc/apt/apt.conf.d/02compressindex
- runtest
- # no Release.gpg or InRelease
- msgmsg "Release only"
- EXPECT="Ign http://localhost:8080 unstable InRelease
- 404 Not Found
- Hit http://localhost:8080 unstable Release
- Ign http://localhost:8080 unstable Release.gpg
- 404 Not Found
- Hit http://localhost:8080 unstable/main Sources
- Hit http://localhost:8080 unstable/main amd64 Packages
- Hit http://localhost:8080 unstable/main Translation-en
- Reading package lists...
- W: The data from 'http://localhost:8080 unstable Release.gpg' is not signed. Packages from that repository can not be authenticated."
- find aptarchive -name 'Release.gpg' -delete
- echo "Acquire::GzipIndexes "0";" > rootdir/etc/apt/apt.conf.d/02compressindex
- runtest "true"
- echo "Acquire::GzipIndexes "1";" > rootdir/etc/apt/apt.conf.d/02compressindex
- runtest "true"
|