X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/e43a426e5d402d36eb180935fbbf1430a4a86e3f..4bba5a88d0f6afde4414b586b64c48a4851d5324:/test/integration/test-apt-https-no-redirect?ds=sidebyside diff --git a/test/integration/test-apt-https-no-redirect b/test/integration/test-apt-https-no-redirect index 106d4bced..69e2ba57f 100755 --- a/test/integration/test-apt-https-no-redirect +++ b/test/integration/test-apt-https-no-redirect @@ -1,38 +1,30 @@ #!/bin/sh set -e -TESTDIR=$(readlink -f $(dirname $0)) -. $TESTDIR/framework +TESTDIR="$(readlink -f "$(dirname "$0")")" +. "$TESTDIR/framework" setupenvironment configarchitecture "i386" -buildsimplenativepackage 'apt' 'all' '1.0' 'stable' +insertpackage 'stable' 'apt' 'all' '1' setupaptarchive --no-update -changetohttpswebserver -o 'aptwebserver::redirect::replace::/redirectme/=http://localhost:8080/' +echo 'alright' > aptarchive/working +changetohttpswebserver +webserverconfig 'aptwebserver::redirect::replace::/redirectme/' "http://localhost:${APTHTTPPORT}/" +webserverconfig 'aptwebserver::redirect::replace::/redirectme2/' "https://localhost:${APTHTTPSPORT}/" -DOWNLOG='download-testfile.log' -msgtest 'normal http download works' -downloadfile 'http://localhost:8080/pool/apt_1.0/changelog' changelog2 > "$DOWNLOG" && msgpass || msgfail +msgtest 'download of a file works via' 'http' +testsuccess --nomsg downloadfile "http://localhost:${APTHTTPPORT}/working" httpfile +testfileequal httpfile 'alright' -msgtest 'normal https download works' -downloadfile 'https://localhost:4433/pool/apt_1.0/changelog' changelog > "$DOWNLOG" && msgpass || msgfail - -msgtest 'redirecting https to http does not work' -if ! downloadfile 'https://localhost:4433/redirectme/pool/apt_1.0/changelog' changelog3 > "$DOWNLOG"; then - msgpass -else - cat >&2 "$DOWNLOG" - msgfail -fi - -msgtest 'https methods given proper error on redirect attempt' -if grep -q 'Protocol http not supported or disabled in libcurl' "$DOWNLOG"; then - msgpass -else - cat >&2 "$DOWNLOG" - msgfail -fi +msgtest 'download of a file works via' 'https' +testsuccess --nomsg downloadfile "https://localhost:${APTHTTPSPORT}/working" httpsfile +testfileequal httpsfile 'alright' +msgtest 'download of a file does not work if' 'https redirected to http' +testfailure --nomsg downloadfile "https://localhost:${APTHTTPSPORT}/redirectme/working" redirectfile +msgtest 'libcurl has forbidden access in last request to' 'http resource' +testsuccess --nomsg grep -q -E -- "Redirection from https to 'http://.*' is forbidden" rootdir/tmp/testfailure.output