4 TESTDIR
=$(readlink -f $(dirname $0))
7 configarchitecture
'i386'
10 insertpackage
'testing' 'foo' 'all' '1'
11 insertpackage
'testing' 'foo2' 'all' '1'
12 insertsource
'testing' 'foo' 'all' '1'
13 insertsource
'testing' 'foo2' 'all' '1'
15 setupaptarchive
--no-update
19 Maintainer: Doctor Evil <evil@example.com>
20 Description: come to the dark side
21 ' > aptarchive
/DoctorEvil
22 compressfile aptarchive
/DoctorEvil
24 find aptarchive \
( -name 'Packages' -o -name 'Sources' -o -name 'Translation-en' \
) -delete
26 testsuccess aptget update
27 testsuccess aptcache show foo
28 testsuccess aptget
install foo
-s
30 for get
in $(sed -n 's#^GET /\([^ ]\+\.gz\) HTTP.\
+$#\
1#p' aptarchive/webserver.log); do
31 msgmsg
'Test hashsum mismatch with file' "$get"
32 rm -rf rootdir
/var
/lib
/apt
/lists
33 webserverconfig
'aptwebserver::overwrite' ''
34 webserverconfig
"aptwebserver::overwrite::$(printf '%s' "${get}" | sed 's#/#%2F#g' )::filename" '%2FDoctorEvil.gz'
36 testfailure aptget update
37 cp rootdir
/tmp
/testfailure.output rootdir
/tmp
/update.output
38 testsuccess
grep -E "$(basename -s '.gz' "$get").*Hash Sum mismatch" rootdir
/tmp
/update.output
39 testfailure aptcache show foo
40 testfailure aptget
install foo
-s
42 testfailure aptcache show bar
43 testfailure aptget
install bar
-s