]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | set -e | |
3 | ||
4 | TESTDIR="$(readlink -f "$(dirname "$0")")" | |
5 | . "$TESTDIR/framework" | |
6 | setupenvironment | |
7 | configarchitecture 'i386' | |
8 | ||
9 | buildsimplenativepackage 'cool' 'i386' '1.0' 'unstable' | |
10 | ||
11 | setupaptarchive --no-update | |
12 | ||
13 | testfileexists() { | |
14 | msgtest 'Test for existence of file' "$1" | |
15 | test -e "$1" && msgpass || msgfail | |
16 | rm -f "$1" | |
17 | } | |
18 | ||
19 | testfilemissing() { | |
20 | msgtest 'Test for non-existence of file' "$1" | |
21 | test -e "$1" && msgfail || msgpass | |
22 | rm -f "$1" | |
23 | } | |
24 | ||
25 | testrun() { | |
26 | rm -rf rootdir/var/lib/apt | |
27 | cd downloaded | |
28 | ||
29 | if [ "$1" = 'trusted' ]; then | |
30 | testsuccess aptget update | |
31 | ||
32 | testsuccess aptget download cool | |
33 | testfileexists 'cool_1.0_i386.deb' | |
34 | ||
35 | testsuccess aptget download cool --allow-unauthenticated | |
36 | testfileexists 'cool_1.0_i386.deb' | |
37 | else | |
38 | testwarning aptget update --allow-insecure-repositories | |
39 | ||
40 | testfailure aptget download cool | |
41 | testfilemissing 'cool_1.0_i386.deb' | |
42 | ||
43 | testsuccess aptget download cool --allow-unauthenticated | |
44 | testfileexists 'cool_1.0_i386.deb' | |
45 | fi | |
46 | ||
47 | mv ../aptarchive/pool/cool_1.0_i386.deb ../aptarchive/pool/cool_1.0_i386.deb.bak | |
48 | echo 'this is not a good package' > ../aptarchive/pool/cool_1.0_i386.deb | |
49 | testfailure aptget download cool | |
50 | testfilemissing cool_1.0_i386.deb | |
51 | ||
52 | testfailure aptget download cool --allow-unauthenticated # unauthenticated doesn't mean unchecked | |
53 | testfilemissing cool_1.0_i386.deb | |
54 | ||
55 | rm -f ../aptarchive/pool/cool_1.0_i386.deb | |
56 | mv ../aptarchive/pool/cool_1.0_i386.deb.bak ../aptarchive/pool/cool_1.0_i386.deb | |
57 | testsuccess aptget download cool --allow-unauthenticated | |
58 | testfileexists 'cool_1.0_i386.deb' | |
59 | cd - >/dev/null | |
60 | } | |
61 | ||
62 | testrun 'trusted' | |
63 | ||
64 | find aptarchive/ \( -name 'Release.gpg' -o -name 'InRelease' \) -delete | |
65 | testrun 'untrusted' | |
66 | ||
67 | changetowebserver | |
68 | testrun 'untrusted' |