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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
|
#!/bin/sh
set -e
TESTDIR="$(readlink -f "$(dirname "$0")")"
. "$TESTDIR/framework"
setupenvironment
configarchitecture 'amd64'
PACKAGESTANZA='Version: 0.9.7.8
Installed-Size: 3270
Maintainer: APT Development Team <deity@lists.debian.org>
Architecture: amd64
Filename: pool/main/a/apt/apt_0.9.7.8_amd64.deb
MD5sum: 3a622acda41620df50aa22a9fac6f32e'
DESCRIPTION='Description: commandline package manager
This APT has Super Cow Powers.'
TRANSDESCRIPTION='Description-en: commandline package manager
This APT has translated Super Cow Powers.'
echo "Package: apt-normal
$PACKAGESTANZA
$DESCRIPTION
Description-md5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Package: apt-both-below
$PACKAGESTANZA
$DESCRIPTION
$TRANSDESCRIPTION
Description-md5: bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
Package: apt-both-middle
$PACKAGESTANZA
$DESCRIPTION
Description-md5: bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
$TRANSDESCRIPTION
Package: apt-both-top
$PACKAGESTANZA
Description-md5: bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
$DESCRIPTION
$TRANSDESCRIPTION
Package: apt-trans
$PACKAGESTANZA
$TRANSDESCRIPTION
Description-md5: cccccccccccccccccccccccccccccccc
Package: apt-md5
$PACKAGESTANZA
Description-md5: dddddddddddddddddddddddddddddddd
Package: apt-none
$PACKAGESTANZA
Package: apt-intermixed
$PACKAGESTANZA
$DESCRIPTION
X-Some-Flag: yes
Description-md5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Package: apt-intermixed2
$PACKAGESTANZA
$DESCRIPTION
X-Some-Flag: yes
$TRANSDESCRIPTION
X-Foo-Flag: Something with a Description
Description-md5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
X-Bar-Flag: no
Package: apt-intermixed3
$PACKAGESTANZA
$DESCRIPTION
X-Some-Flag: yes
$TRANSDESCRIPTION
X-Foo-Flag: Something with a Description
X-Bar-Flag: no
Description-md5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" > aptarchive/Packages
setupaptarchive
testsuccessequal "Package: apt-normal
$PACKAGESTANZA
$DESCRIPTION
Description-md5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
" aptcache show apt-normal
for variant in 'below' 'middle' 'top'; do
testsuccessequal "Package: apt-both-$variant
$PACKAGESTANZA
$TRANSDESCRIPTION
Description-md5: bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
" aptcache show apt-both-$variant
done
testsuccessequal "Package: apt-trans
$PACKAGESTANZA
$TRANSDESCRIPTION
Description-md5: cccccccccccccccccccccccccccccccc
" aptcache show apt-trans
testsuccessequal "Package: apt-md5
$PACKAGESTANZA
Description-md5: dddddddddddddddddddddddddddddddd
" aptcache show apt-md5
testsuccessequal "Package: apt-none
$PACKAGESTANZA
" aptcache show apt-none
testsuccessequal "Package: apt-intermixed
$PACKAGESTANZA
$DESCRIPTION
Description-md5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
X-Some-Flag: yes
" aptcache show apt-intermixed
testsuccessequal "Package: apt-intermixed2
$PACKAGESTANZA
$TRANSDESCRIPTION
Description-md5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
X-Some-Flag: yes
X-Foo-Flag: Something with a Description
X-Bar-Flag: no
" aptcache show apt-intermixed2
testsuccessequal "Package: apt-intermixed3
$PACKAGESTANZA
$TRANSDESCRIPTION
Description-md5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
X-Some-Flag: yes
X-Foo-Flag: Something with a Description
X-Bar-Flag: no
" aptcache show apt-intermixed3
msgtest 'Test that no description does not destroy' 'showpkg'
aptcache showpkg apt-none | sed 's#/tmp/.*_aptarchive_#/tmp/aptarchive_#' >showpkg.explosion && msgpass || msgfail
testfileequal showpkg.explosion 'Package: apt-none
Versions:
0.9.7.8 (/tmp/aptarchive_Packages)
Reverse Depends:
Dependencies:
0.9.7.8 -
Provides:
0.9.7.8 -
Reverse Provides: '
testempty aptcache search nonexistentstring
# packages without a description can't be found
testsuccessequal 'apt-normal - commandline package manager
apt-both-below - commandline package manager
apt-both-middle - commandline package manager
apt-both-top - commandline package manager
apt-trans - commandline package manager
apt-intermixed - commandline package manager
apt-intermixed2 - commandline package manager
apt-intermixed3 - commandline package manager' aptcache search apt
|