~ubuntu-branches/ubuntu/raring/reprepro/raring

« back to all changes in this revision

Viewing changes to tests/testcheck.sh

  • Committer: Bazaar Package Importer
  • Author(s): Bernhard R. Link
  • Date: 2011-05-05 16:34:23 UTC
  • mfrom: (21.1.5 sid)
  • Revision ID: james.westby@ubuntu.com-20110505163423-x49kbdijyoubai4x
Tags: 4.6.0-1
* new release
- general cleanup
- new FilterSrcList
* increase Standards-Version, no changes needed

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/bin/bash
2
 
 
3
 
set -e
4
 
if [ "x$TESTINCSETUP" != "xissetup" ] ; then
5
 
        source $(dirname $0)/test.inc
6
 
fi
7
 
 
8
 
dodo test ! -d db
9
 
mkdir -p conf db pool
10
 
cat > conf/distributions <<EOF
11
 
Codename: n
12
 
Components: c
13
 
Architectures: a
14
 
EOF
15
 
cat > conf/options <<EOF
16
 
export never
17
 
EOF
18
 
 
19
 
echo "fake-deb1" > fake1.deb
20
 
echo "fake-deb2" > fake2.deb
21
 
echo "fake-deb3" > fake3.deb
22
 
 
23
 
fakedeb1md="$(md5 fake1.deb)"
24
 
fakedeb2md="$(md5 fake2.deb)"
25
 
fakedeb3md="$(md5 fake3.deb)"
26
 
fakedeb1sha1="$(sha1 fake1.deb)"
27
 
fakedeb2sha1="$(sha1 fake2.deb)"
28
 
fakedeb3sha1="$(sha1 fake3.deb)"
29
 
fakedeb1sha2="$(sha256 fake1.deb)"
30
 
fakedeb2sha2="$(sha256 fake2.deb)"
31
 
fakedeb3sha2="$(sha256 fake3.deb)"
32
 
fakesize=10
33
 
 
34
 
cat > fakeindex <<EOF
35
 
Package: fake
36
 
Version: 0
37
 
Source: pseudo (9999)
38
 
Architecture: all
39
 
Filename: pool/c/p/pseudo/fake_0_all.deb
40
 
Section: base
41
 
Priority: extra
42
 
Size: $fakesize
43
 
MD5Sum: $fakedeb1md
44
 
EOF
45
 
 
46
 
testrun - -b . -C c -A a -T deb _addpackage n fakeindex fake  3<<EOF
47
 
returns 249
48
 
stderr
49
 
*=Error: package fake version 0 lists file pool/c/p/pseudo/fake_0_all.deb not yet in the pool!
50
 
-v0*=There have been errors!
51
 
stdout
52
 
EOF
53
 
 
54
 
mkdir -p pool/c/p/pseudo
55
 
cp fake2.deb pool/c/p/pseudo/fake_0_all.deb
56
 
 
57
 
testrun - -b . _detect pool/c/p/pseudo/fake_0_all.deb 3<<EOF
58
 
stderr
59
 
stdout
60
 
-d1*=db: 'pool/c/p/pseudo/fake_0_all.deb' added to checksums.db(pool).
61
 
-v0*=1 files were added but not used.
62
 
-v0*=The next deleteunreferenced call will delete them.
63
 
EOF
64
 
 
65
 
testrun - -b . -C c -A a -T deb _addpackage n fakeindex fake  3<<EOF
66
 
returns 254
67
 
stderr
68
 
*=File "pool/c/p/pseudo/fake_0_all.deb" is already registered with different checksums!
69
 
*=md5 expected: $fakedeb2md, got: $fakedeb1md
70
 
*=Error: package fake version 0 lists different checksums than in the pool!
71
 
-v0*=There have been errors!
72
 
stdout
73
 
EOF
74
 
 
75
 
testrun - -b . _forget pool/c/p/pseudo/fake_0_all.deb 3<<EOF
76
 
stderr
77
 
stdout
78
 
-d1*=db: 'pool/c/p/pseudo/fake_0_all.deb' removed from checksums.db(pool).
79
 
EOF
80
 
 
81
 
cp fake1.deb pool/c/p/pseudo/fake_0_all.deb
82
 
 
83
 
testrun - -b . _detect pool/c/p/pseudo/fake_0_all.deb 3<<EOF
84
 
stderr
85
 
stdout
86
 
-d1*=db: 'pool/c/p/pseudo/fake_0_all.deb' added to checksums.db(pool).
87
 
-v0*=1 files were added but not used.
88
 
-v0*=The next deleteunreferenced call will delete them.
89
 
EOF
90
 
 
91
 
testrun - -b . -C c -A a -T deb _addpackage n fakeindex fake  3<<EOF
92
 
stderr
93
 
*=Warning: database 'n|c|a' was modified but no index file was exported.
94
 
*=Changes will only be visible after the next 'export'!
95
 
stdout
96
 
-d1*=db: 'fake' added to packages.db(n|c|a).
97
 
-v1*=Adding 'fake' '0' to 'n|c|a'.
98
 
EOF
99
 
 
100
 
testrun - -b . checkpool 3<<EOF
101
 
stderr
102
 
stdout
103
 
EOF
104
 
 
105
 
testrun - -b . check 3<<EOF
106
 
stderr
107
 
stdout
108
 
-v1*=Checking n...
109
 
EOF
110
 
 
111
 
cp fake3.deb pool/c/p/pseudo/fake_0_all.deb
112
 
 
113
 
testrun - -b . check 3<<EOF
114
 
stderr
115
 
stdout
116
 
-v1*=Checking n...
117
 
EOF
118
 
 
119
 
testrun - -b . checkpool 3<<EOF
120
 
return 254
121
 
stderr
122
 
*=WRONG CHECKSUMS of './pool/c/p/pseudo/fake_0_all.deb':
123
 
*=md5 expected: $fakedeb1md, got: $fakedeb3md
124
 
*=sha1 expected: $fakedeb1sha1, got: $fakedeb3sha1
125
 
*=sha256 expected: $fakedeb1sha2, got: $fakedeb3sha2
126
 
-v0*=There have been errors!
127
 
stdout
128
 
EOF
129
 
 
130
 
testrun - -b . _forget pool/c/p/pseudo/fake_0_all.deb 3<<EOF
131
 
stderr
132
 
stdout
133
 
-d1*=db: 'pool/c/p/pseudo/fake_0_all.deb' removed from checksums.db(pool).
134
 
EOF
135
 
 
136
 
testrun - -b . _detect pool/c/p/pseudo/fake_0_all.deb 3<<EOF
137
 
stderr
138
 
stdout
139
 
-d1*=db: 'pool/c/p/pseudo/fake_0_all.deb' added to checksums.db(pool).
140
 
EOF
141
 
 
142
 
testrun - -b . checkpool 3<<EOF
143
 
stderr
144
 
stdout
145
 
EOF
146
 
 
147
 
testrun - -b . check 3<<EOF
148
 
stdout
149
 
-v1*=Checking n...
150
 
stderr
151
 
*=File "pool/c/p/pseudo/fake_0_all.deb" is already registered with different checksums!
152
 
*=md5 expected: $fakedeb3md, got: $fakedeb1md
153
 
*=Files are missing for 'fake'!
154
 
-v0*=There have been errors!
155
 
returns 254
156
 
EOF
157
 
 
158
 
testrun - -b . _forget pool/c/p/pseudo/fake_0_all.deb 3<<EOF
159
 
stderr
160
 
stdout
161
 
-d1*=db: 'pool/c/p/pseudo/fake_0_all.deb' removed from checksums.db(pool).
162
 
EOF
163
 
 
164
 
# Correct size but wrong checksum:
165
 
testrun - -b . check 3<<EOF
166
 
stdout
167
 
-v1*=Checking n...
168
 
stderr
169
 
*=Deleting unexpected file './pool/c/p/pseudo/fake_0_all.deb'!
170
 
*=(not in database and wrong in pool)
171
 
*= Missing file pool/c/p/pseudo/fake_0_all.deb
172
 
*=Files are missing for 'fake'!
173
 
-v0*=There have been errors!
174
 
returns 249
175
 
EOF
176
 
# Wrong size:
177
 
echo "Tooo long......" > pool/c/p/pseudo/fake_0_all.deb
178
 
testrun - -b . check 3<<EOF
179
 
stdout
180
 
-v1*=Checking n...
181
 
stderr
182
 
*=Deleting unexpected file './pool/c/p/pseudo/fake_0_all.deb'!
183
 
*=(not in database and wrong in pool)
184
 
*= Missing file pool/c/p/pseudo/fake_0_all.deb
185
 
*=Files are missing for 'fake'!
186
 
-v0*=There have been errors!
187
 
returns 249
188
 
EOF
189
 
 
190
 
cp fake1.deb pool/c/p/pseudo/fake_0_all.deb
191
 
 
192
 
testrun - -b . check 3<<EOF
193
 
stderr
194
 
-v0*=Warning: readded existing file 'pool/c/p/pseudo/fake_0_all.deb' mysteriously missing from the checksum database.
195
 
stdout
196
 
-v1*=Checking n...
197
 
-d1*=db: 'pool/c/p/pseudo/fake_0_all.deb' added to checksums.db(pool).
198
 
stderr
199
 
EOF
200
 
 
201
 
testout - -b . _dumpcontents 'n|c|a' 3<<EOF
202
 
EOF
203
 
 
204
 
cat >results.expected << EOF
205
 
'fake' -> 'Package: fake
206
 
Version: 0
207
 
Source: pseudo (9999)
208
 
Architecture: all
209
 
Filename: pool/c/p/pseudo/fake_0_all.deb
210
 
Section: base
211
 
Priority: extra
212
 
Size: $fakesize
213
 
MD5Sum: $fakedeb1md
214
 
'
215
 
EOF
216
 
dodiff results.expected results
217
 
cat results
218
 
 
219
 
testrun - -b . _listchecksums 3<<EOF
220
 
stdout
221
 
*=pool/c/p/pseudo/fake_0_all.deb :1:$fakedeb1sha1 :2:$fakedeb1sha2 $fakedeb1md $fakesize
222
 
stderr
223
 
EOF
224
 
 
225
 
dodo test ! -e dists
226
 
 
227
 
rm -r -f db conf pool fake*.deb fakeindex
228
 
testsuccess