X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/52d5690b47bd4efe425fa23d9f6559bb44324cd1..b58047e0d8fa8e7d5adca2a24f2ca3ba2596e0ad:/test/integration/test-bug-602412-dequote-redirect diff --git a/test/integration/test-bug-602412-dequote-redirect b/test/integration/test-bug-602412-dequote-redirect index f1e67c6d8..3d88baaef 100755 --- a/test/integration/test-bug-602412-dequote-redirect +++ b/test/integration/test-bug-602412-dequote-redirect @@ -1,29 +1,44 @@ #!/bin/sh set -e -TESTDIR=$(readlink -f $(dirname $0)) -. $TESTDIR/framework +TESTDIR="$(readlink -f "$(dirname "$0")")" +. "$TESTDIR/framework" setupenvironment configarchitecture 'amd64' buildsimplenativepackage 'unrelated' 'all' '0.5~squeeze1' 'unstable' -setupaptarchive +setupaptarchive --no-update changetowebserver -o aptwebserver::redirect::replace::/pool/=/newpool/ \ -o aptwebserver::redirect::replace::/dists/=/newdists/ mv aptarchive/pool aptarchive/newpool mv aptarchive/dists aptarchive/newdists -msgtest 'Test redirection works in' 'apt-get update' -aptget update -qq && msgpass || msgfail +testrun() { + msgmsg "Test $1 redirection works in method boundaries" "$2" + msgtest 'Test redirection works in' 'apt-get update' + testsuccess --nomsg aptget update -# check that I-M-S header is kept in redirections -testequal 'Hit http://localhost unstable InRelease -Hit http://localhost unstable/main Sources -Hit http://localhost unstable/main amd64 Packages -Hit http://localhost unstable/main Translation-en -Reading package lists...' aptget update + # check that I-M-S header is kept in redirections + testsuccessequal "Hit:1 $2 unstable InRelease +Reading package lists..." aptget update -msgtest 'Test redirection works in' 'package download' -aptget install unrelated --download-only -qq && msgpass || msgfail + msgtest 'Test redirection works in' 'package download' + testsuccess --nomsg aptget install unrelated --download-only -y +} + +for CODE in 301 302 307; do + webserverconfig 'aptwebserver::redirect::httpcode' "$CODE" + testrun "$CODE" "http://localhost:${APTHTTPPORT}" + testsuccess grep "^HTTP/1.1 $CODE " aptarchive/webserver.log + rm -rf rootdir/var/lib/apt/lists rootdir/var/cache/apt/archives +done + +changetohttpswebserver + +for CODE in 301 302 307; do + webserverconfig 'aptwebserver::redirect::httpcode' "$CODE" + testrun "$CODE" "https://localhost:${APTHTTPSPORT}" + rm -rf rootdir/var/lib/apt/lists rootdir/var/cache/apt/archives +done