]>
Commit | Line | Data |
---|---|---|
f213b6ea DK |
1 | #!/bin/sh |
2 | set -e | |
3 | ||
9962ae93 | 4 | TESTDIR=$(readlink -f $(dirname $0)) |
f213b6ea DK |
5 | . $TESTDIR/framework |
6 | ||
7 | setupenvironment | |
36e7727f | 8 | configcompression '.' 'gz' # only gz is supported for this, so ensure it is used |
f213b6ea DK |
9 | configarchitecture "i386" |
10 | ||
11 | buildsimplenativepackage "testpkg" "i386" "1.0" | |
12 | setupaptarchive | |
13 | ||
718f797c | 14 | GOODSHOW="$(aptcache show testpkg) |
f213b6ea | 15 | " |
718f797c DK |
16 | GOODPOLICY="$(aptcache policy testpkg)" |
17 | GOODSHOWSRC="$(aptcache showsrc testpkg) | |
f213b6ea DK |
18 | " |
19 | ||
b761356f | 20 | test $(echo "$GOODSHOW" | grep -e '^Package: testpkg' -e '^Version: 1.0' -e '^Architecture: i386' | wc -l) -eq 3 || msgdie 'show is broken' |
f213b6ea | 21 | testequal "$GOODSHOW" aptcache show testpkg |
b761356f | 22 | test $(echo "$GOODPOLICY" | grep -e '^testpkg:' -e '^ Candidate:' -e '^ Installed: (none)' -e '500 file:/' | wc -l) -eq 4 || msgdie 'policy is broken' |
f213b6ea | 23 | testequal "$GOODPOLICY" aptcache policy testpkg |
b761356f | 24 | test $(echo "$GOODSHOWSRC" | grep -e '^Package: testpkg' -e '^Format: 3.0 (native)' -e '^Files:' -e '^Checksums-Sha256:' | wc -l) -eq 4 || msgdie 'showsrc is broken' |
f213b6ea DK |
25 | testequal "$GOODSHOWSRC" aptcache showsrc testpkg |
26 | ||
27 | ||
28 | testrun() { | |
29 | local F | |
30 | if [ -e rootdir/var/lib/apt/lists/*localhost*Release ]; then | |
31 | msgtest "Check if all index files are" "${1:-uncompressed}" | |
32 | if [ "$1" = "compressed" ]; then | |
33 | ! test -e rootdir/var/lib/apt/lists/*_Packages || F=1 | |
34 | ! test -e rootdir/var/lib/apt/lists/*_Sources || F=1 | |
35 | test -e rootdir/var/lib/apt/lists/*_Packages.gz || F=1 | |
36 | test -e rootdir/var/lib/apt/lists/*_Sources.gz || F=1 | |
37 | else | |
38 | test -e rootdir/var/lib/apt/lists/*_Packages || F=1 | |
39 | test -e rootdir/var/lib/apt/lists/*_Sources || F=1 | |
40 | ! test -e rootdir/var/lib/apt/lists/*_Packages.gz || F=1 | |
41 | ! test -e rootdir/var/lib/apt/lists/*_Sources.gz || F=1 | |
42 | fi | |
43 | if [ -n "$F" ]; then | |
44 | ls -laR rootdir/var/lib/apt/lists/ | |
45 | msgfail | |
46 | else | |
47 | msgpass | |
48 | fi | |
49 | msgtest "Check if package is downloadable" | |
0440d936 DK |
50 | testsuccess --nomsg aptget install -d testpkg |
51 | msgtest "\tdeb file is present"; testsuccess --nomsg test -f rootdir/var/cache/apt/archives/testpkg_1.0_i386.deb | |
f213b6ea | 52 | aptget clean |
0440d936 | 53 | msgtest "\tdeb file is gone"; testfailure --nomsg test -f rootdir/var/cache/apt/archives/testpkg_1.0_i386.deb |
f213b6ea | 54 | fi |
8de79b68 | 55 | rm -f rootdir/var/cache/apt/pkgcache.bin rootdir/var/cache/apt/srcpkgcache.bin |
f213b6ea DK |
56 | testequal "$GOODSHOW" aptcache show testpkg |
57 | testequal "$GOODSHOW" aptcache show testpkg | |
8de79b68 | 58 | rm -f rootdir/var/cache/apt/pkgcache.bin rootdir/var/cache/apt/srcpkgcache.bin |
f213b6ea DK |
59 | testequal "$GOODPOLICY" aptcache policy testpkg |
60 | testequal "$GOODPOLICY" aptcache policy testpkg | |
8de79b68 | 61 | rm -f rootdir/var/cache/apt/pkgcache.bin rootdir/var/cache/apt/srcpkgcache.bin |
f213b6ea DK |
62 | testequal "$GOODSHOWSRC" aptcache showsrc testpkg |
63 | testequal "$GOODSHOWSRC" aptcache showsrc testpkg | |
8de79b68 | 64 | aptget clean |
f213b6ea | 65 | msgtest "Check if the source is aptgetable" |
0440d936 DK |
66 | testsuccess --nomsg aptget source testpkg |
67 | msgtest "\tdsc file is present"; testsuccess --nomsg test -f testpkg_1.0.dsc | |
68 | msgtest "\tdirectory is present"; testsuccess --nomsg test -d testpkg-1.0 | |
f213b6ea | 69 | rm -rf testpkg-1.0 |
4dde2b42 DK |
70 | testequal "$(aptcache show testpkg -o Acquire::Languages=none) |
71 | " aptcache dumpavail | |
f213b6ea DK |
72 | } |
73 | ||
d88a49c8 | 74 | echo 'Acquire::GzipIndexes "false";' > rootdir/etc/apt/apt.conf.d/02compressindex |
f213b6ea DK |
75 | msgmsg "File: Test with uncompressed indexes" |
76 | testrun | |
77 | ||
0440d936 | 78 | testsuccess aptget update -o Acquire::Pdiffs=1 |
f213b6ea DK |
79 | msgmsg "File: Test with uncompressed indexes (update unchanged with pdiffs)" |
80 | testrun | |
81 | ||
0440d936 | 82 | testsuccess aptget update -o Acquire::Pdiffs=0 |
f213b6ea DK |
83 | msgmsg "File: Test with uncompressed indexes (update unchanged without pdiffs)" |
84 | testrun | |
85 | ||
86 | rm -rf rootdir/var/lib/apt/lists | |
87 | echo 'Acquire::CompressionTypes::Order:: "gz"; | |
88 | Acquire::GzipIndexes "true";' > rootdir/etc/apt/apt.conf.d/02compressindex | |
89 | ||
0440d936 | 90 | testsuccess aptget update |
f213b6ea DK |
91 | msgmsg "File: Test with compressed indexes" |
92 | testrun "compressed" | |
93 | ||
0440d936 | 94 | testsuccess aptget update -o Acquire::Pdiffs=1 |
f213b6ea DK |
95 | msgmsg "File: Test with compressed indexes (update unchanged with pdiffs)" |
96 | testrun "compressed" | |
97 | ||
0440d936 | 98 | testsuccess aptget update -o Acquire::Pdiffs=0 |
f213b6ea DK |
99 | msgmsg "File: Test with compressed indexes (update unchanged without pdiffs)" |
100 | testrun "compressed" | |
101 | ||
102 | rm rootdir/etc/apt/apt.conf.d/02compressindex | |
103 | changetowebserver | |
0440d936 | 104 | testsuccess aptget update |
718f797c | 105 | GOODPOLICY="$(aptcache policy testpkg)" |
f213b6ea DK |
106 | test $(echo "$GOODPOLICY" | grep -e '^testpkg:' -e '^ Candidate:' -e '^ Installed: (none)' -e '500 http://' | wc -l) -eq 4 |
107 | testequal "$GOODPOLICY" aptcache policy testpkg | |
108 | ||
109 | msgmsg "HTTP: Test with uncompressed indexes" | |
110 | testrun | |
111 | ||
0440d936 | 112 | testsuccess aptget update -o Acquire::Pdiffs=1 |
f213b6ea DK |
113 | msgmsg "HTTP: Test with uncompressed indexes (update unchanged with pdiffs)" |
114 | testrun | |
115 | ||
0440d936 | 116 | testsuccess aptget update -o Acquire::Pdiffs=0 |
f213b6ea DK |
117 | msgmsg "HTTP: Test with uncompressed indexes (update unchanged without pdiffs)" |
118 | testrun | |
119 | ||
120 | rm -rf rootdir/var/lib/apt/lists | |
121 | echo 'Acquire::CompressionTypes::Order:: "gz"; | |
122 | Acquire::GzipIndexes "true";' > rootdir/etc/apt/apt.conf.d/02compressindex | |
123 | ||
0440d936 | 124 | testsuccess aptget update |
f213b6ea DK |
125 | msgmsg "HTTP: Test with compressed indexes" |
126 | testrun "compressed" | |
127 | ||
0440d936 | 128 | testsuccess aptget update -o Acquire::Pdiffs=1 |
f213b6ea DK |
129 | msgmsg "HTTP: Test with compressed indexes (update unchanged with pdiffs)" |
130 | testrun "compressed" | |
131 | ||
0440d936 | 132 | testsuccess aptget update -o Acquire::Pdiffs=0 |
f213b6ea DK |
133 | msgmsg "HTTP: Test with compressed indexes (update unchanged without pdiffs)" |
134 | testrun "compressed" |