blob: bce41235f3393fd200dc0f2567f717b2dc8144d4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#!/bin/sh
set -e
TESTDIR="$(readlink -f "$(dirname "$0")")"
. "$TESTDIR/framework"
setupenvironment
configarchitecture 'native'
echo 'found' > aptarchive/working
changetohttpswebserver -o 'aptwebserver::redirect::replace::/redirectme/=/' \
-o 'aptwebserver::httpcode::200=200' -o 'aptwebserver::httpcode::404=404' \
-o 'aptwebserver::httpcode::301=301'
testdownload() {
rm -f downfile
msgtest "download of a $1 via" "${3%%:*}"
$2 --nomsg downloadfile "$3" downfile
cp rootdir/tmp/testsuccess.output download.log
#looking for "HTTP server doesn't give Reason-Phrase for 200"
testsuccess grep 'give Reason-Phrase for' download.log
if [ "$2" = 'testsuccess' ]; then
testfileequal downfile 'found'
else
testfailure test -e downfile
fi
}
runtest() {
testdownload 'file works' 'testsuccess' "$1/working"
testdownload 'file via redirect works' 'testsuccess' "$1/redirectme/working"
testdownload 'non-existent file fails' 'testfailure' "$1/failing"
testdownload 'non-existent file via redirect fails' 'testfailure' "$1/redirectme/failing"
}
runtest "http://localhost:${APTHTTPPORT}"
runtest "https://localhost:${APTHTTPSPORT}"
|