]> git.saurik.com Git - apt.git/blob - test/integration/test-bug-632221-cross-dependency-satisfaction
apt-inst: Do not try to create a substring of an empty string in error reporting
[apt.git] / test / integration / test-bug-632221-cross-dependency-satisfaction
1 #!/bin/sh
2 set -e
3
4 TESTDIR=$(readlink -f $(dirname $0))
5 . $TESTDIR/framework
6 setupenvironment
7 configarchitecture 'amd64' 'armel'
8
9 insertinstalledpackage 'build-essential' 'all' '11.5' 'Multi-Arch: foreign'
10
11 insertpackage 'unstable' 'doxygen' 'amd64,armel' '1.0' 'Multi-Arch: foreign'
12 insertpackage 'unstable' 'libc6' 'amd64,armel' '1.0' 'Multi-Arch: same'
13 insertpackage 'unstable' 'libc6-dev' 'amd64,armel' '1.0' 'Depends: libc6
14 Multi-Arch: same'
15 insertpackage 'unstable' 'libfwibble1' 'amd64,armel' '1.0' 'Depends: libc6
16 Multi-Arch: same'
17 insertpackage 'unstable' 'libfwibble-dev' 'amd64,armel' '1.0' 'Depends: libfwibble1'
18 insertpackage 'unstable' 'cool' 'amd64,armel' '1.0' 'Multi-Arch: allowed'
19 insertpackage 'unstable' 'amdboot' 'amd64' '1.0'
20 insertpackage 'unstable' 'foreigner' 'amd64,armel' '1.0' 'Multi-Arch: foreign'
21 insertpackage 'unstable' 'arm-stuff' 'armel' '1.0'
22 insertpackage 'unstable' 'linux-stuff' 'amd64,armel' '1.0'
23
24 insertsource 'unstable' 'apt' 'any' '0.8.15' 'Build-Depends: doxygen, libc6-dev, libc6-dev:native, cool:any, amdboot:amd64, foreigner, libfwibble-dev, arm-stuff [any-armel] | linux-stuff [ linux-any]'
25
26 insertsource 'unstable' 'forbidden-none' 'any' '1' 'Build-Depends: amdboot:any'
27 insertsource 'unstable' 'forbidden-same' 'any' '1' 'Build-Depends: libc6:any'
28 insertsource 'unstable' 'forbidden-foreign' 'any' '1' 'Build-Depends: doxygen:any'
29
30 insertpackage 'unstable' 'specific' 'amd64' '1.0' 'Depends: libc6:amd64'
31 insertpackage 'unstable' 'specific' 'armel' '1.0' 'Depends: libc6:armel'
32
33 insertsource 'unstable' 'source-specific-amd64' 'amd64' '1' 'Build-Depends: specific:amd64'
34 insertsource 'unstable' 'source-specific-armel' 'armel' '1' 'Build-Depends: specific:armel'
35
36 setupaptarchive
37
38 testequal "Reading package lists...
39 Building dependency tree...
40 E: Build-Depends dependency for forbidden-none can't be satisfied because amdboot:any is not allowed on 'Multi-Arch: none' packages" aptget build-dep forbidden-none -s -a armel
41 testequal "Reading package lists...
42 Building dependency tree...
43 E: Build-Depends dependency for forbidden-same can't be satisfied because libc6:any is not allowed on 'Multi-Arch: same' packages" aptget build-dep forbidden-same -s -a armel
44 testequal "Reading package lists...
45 Building dependency tree...
46 E: Build-Depends dependency for forbidden-foreign can't be satisfied because doxygen:any is not allowed on 'Multi-Arch: foreign' packages" aptget build-dep forbidden-foreign -s -a armel
47
48 testequal 'Reading package lists...
49 Building dependency tree...
50 The following NEW packages will be installed:
51 libc6 specific
52 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
53 Inst libc6 (1.0 unstable [amd64])
54 Inst specific (1.0 unstable [amd64])
55 Conf libc6 (1.0 unstable [amd64])
56 Conf specific (1.0 unstable [amd64])' aptget build-dep source-specific-amd64 -s
57 testequal 'Reading package lists...
58 Building dependency tree...
59 The following NEW packages will be installed:
60 libc6 specific
61 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
62 Inst libc6 (1.0 unstable [amd64])
63 Inst specific (1.0 unstable [amd64])
64 Conf libc6 (1.0 unstable [amd64])
65 Conf specific (1.0 unstable [amd64])' aptget build-dep source-specific-amd64 -s -a armel
66
67 testequal 'Reading package lists...
68 Building dependency tree...
69 The following NEW packages will be installed:
70 libc6:armel specific:armel
71 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
72 Inst libc6:armel (1.0 unstable [armel])
73 Inst specific:armel (1.0 unstable [armel])
74 Conf libc6:armel (1.0 unstable [armel])
75 Conf specific:armel (1.0 unstable [armel])' aptget build-dep source-specific-armel -s
76 testequal 'Reading package lists...
77 Building dependency tree...
78 The following NEW packages will be installed:
79 libc6:armel specific:armel
80 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
81 Inst libc6:armel (1.0 unstable [armel])
82 Inst specific:armel (1.0 unstable [armel])
83 Conf libc6:armel (1.0 unstable [armel])
84 Conf specific:armel (1.0 unstable [armel])' aptget build-dep source-specific-armel -s -a armel
85
86 testequal 'Reading package lists...
87 Building dependency tree...
88 The following NEW packages will be installed:
89 amdboot cool doxygen foreigner libc6 libc6-dev libfwibble-dev libfwibble1
90 linux-stuff
91 0 upgraded, 9 newly installed, 0 to remove and 0 not upgraded.
92 Inst amdboot (1.0 unstable [amd64])
93 Inst cool (1.0 unstable [amd64])
94 Inst doxygen (1.0 unstable [amd64])
95 Inst foreigner (1.0 unstable [amd64])
96 Inst libc6 (1.0 unstable [amd64])
97 Inst libc6-dev (1.0 unstable [amd64])
98 Inst libfwibble1 (1.0 unstable [amd64])
99 Inst libfwibble-dev (1.0 unstable [amd64])
100 Inst linux-stuff (1.0 unstable [amd64])
101 Conf amdboot (1.0 unstable [amd64])
102 Conf cool (1.0 unstable [amd64])
103 Conf doxygen (1.0 unstable [amd64])
104 Conf foreigner (1.0 unstable [amd64])
105 Conf libc6 (1.0 unstable [amd64])
106 Conf libc6-dev (1.0 unstable [amd64])
107 Conf libfwibble1 (1.0 unstable [amd64])
108 Conf libfwibble-dev (1.0 unstable [amd64])
109 Conf linux-stuff (1.0 unstable [amd64])' aptget build-dep apt -s
110
111 testequal 'Reading package lists...
112 Building dependency tree...
113 The following NEW packages will be installed:
114 amdboot arm-stuff:armel cool doxygen foreigner libc6 libc6:armel libc6-dev
115 libc6-dev:armel libfwibble-dev:armel libfwibble1:armel
116 0 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
117 Inst amdboot (1.0 unstable [amd64])
118 Inst arm-stuff:armel (1.0 unstable [armel])
119 Inst cool (1.0 unstable [amd64])
120 Inst doxygen (1.0 unstable [amd64])
121 Inst foreigner (1.0 unstable [amd64])
122 Inst libc6 (1.0 unstable [amd64])
123 Inst libc6:armel (1.0 unstable [armel])
124 Inst libc6-dev (1.0 unstable [amd64])
125 Inst libc6-dev:armel (1.0 unstable [armel])
126 Inst libfwibble1:armel (1.0 unstable [armel])
127 Inst libfwibble-dev:armel (1.0 unstable [armel])
128 Conf amdboot (1.0 unstable [amd64])
129 Conf arm-stuff:armel (1.0 unstable [armel])
130 Conf cool (1.0 unstable [amd64])
131 Conf doxygen (1.0 unstable [amd64])
132 Conf foreigner (1.0 unstable [amd64])
133 Conf libc6 (1.0 unstable [amd64])
134 Conf libc6:armel (1.0 unstable [armel])
135 Conf libc6-dev (1.0 unstable [amd64])
136 Conf libc6-dev:armel (1.0 unstable [armel])
137 Conf libfwibble1:armel (1.0 unstable [armel])
138 Conf libfwibble-dev:armel (1.0 unstable [armel])' aptget build-dep apt -s -a armel
139
140 configarchitecture 'armel' 'amd64'
141
142 testequal 'Reading package lists...
143 Building dependency tree...
144 The following NEW packages will be installed:
145 amdboot:amd64 arm-stuff cool doxygen foreigner libc6 libc6-dev
146 libfwibble-dev libfwibble1
147 0 upgraded, 9 newly installed, 0 to remove and 0 not upgraded.
148 Inst amdboot:amd64 (1.0 unstable [amd64])
149 Inst arm-stuff (1.0 unstable [armel])
150 Inst cool (1.0 unstable [armel])
151 Inst doxygen (1.0 unstable [armel])
152 Inst foreigner (1.0 unstable [armel])
153 Inst libc6 (1.0 unstable [armel])
154 Inst libc6-dev (1.0 unstable [armel])
155 Inst libfwibble1 (1.0 unstable [armel])
156 Inst libfwibble-dev (1.0 unstable [armel])
157 Conf amdboot:amd64 (1.0 unstable [amd64])
158 Conf arm-stuff (1.0 unstable [armel])
159 Conf cool (1.0 unstable [armel])
160 Conf doxygen (1.0 unstable [armel])
161 Conf foreigner (1.0 unstable [armel])
162 Conf libc6 (1.0 unstable [armel])
163 Conf libc6-dev (1.0 unstable [armel])
164 Conf libfwibble1 (1.0 unstable [armel])
165 Conf libfwibble-dev (1.0 unstable [armel])' aptget build-dep apt -s
166
167 testequal 'Reading package lists...
168 Building dependency tree...
169 The following NEW packages will be installed:
170 amdboot:amd64 cool doxygen foreigner libc6:amd64 libc6 libc6-dev:amd64
171 libc6-dev libfwibble-dev:amd64 libfwibble1:amd64 linux-stuff:amd64
172 0 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
173 Inst amdboot:amd64 (1.0 unstable [amd64])
174 Inst cool (1.0 unstable [armel])
175 Inst doxygen (1.0 unstable [armel])
176 Inst foreigner (1.0 unstable [armel])
177 Inst libc6:amd64 (1.0 unstable [amd64])
178 Inst libc6 (1.0 unstable [armel])
179 Inst libc6-dev:amd64 (1.0 unstable [amd64])
180 Inst libc6-dev (1.0 unstable [armel])
181 Inst libfwibble1:amd64 (1.0 unstable [amd64])
182 Inst libfwibble-dev:amd64 (1.0 unstable [amd64])
183 Inst linux-stuff:amd64 (1.0 unstable [amd64])
184 Conf amdboot:amd64 (1.0 unstable [amd64])
185 Conf cool (1.0 unstable [armel])
186 Conf doxygen (1.0 unstable [armel])
187 Conf foreigner (1.0 unstable [armel])
188 Conf libc6:amd64 (1.0 unstable [amd64])
189 Conf libc6 (1.0 unstable [armel])
190 Conf libc6-dev:amd64 (1.0 unstable [amd64])
191 Conf libc6-dev (1.0 unstable [armel])
192 Conf libfwibble1:amd64 (1.0 unstable [amd64])
193 Conf libfwibble-dev:amd64 (1.0 unstable [amd64])
194 Conf linux-stuff:amd64 (1.0 unstable [amd64])' aptget build-dep apt -s -a amd64
195
196 configarchitecture 'amd64' 'armel'
197
198 insertinstalledpackage 'cool' 'amd64' '0.5'
199 insertinstalledpackage 'foreigner' 'armel' '0.5'
200
201 testequal 'Reading package lists...
202 Building dependency tree...
203 The following NEW packages will be installed:
204 amdboot doxygen libc6 libc6-dev libfwibble-dev libfwibble1 linux-stuff
205 0 upgraded, 7 newly installed, 0 to remove and 2 not upgraded.
206 Inst amdboot (1.0 unstable [amd64])
207 Inst doxygen (1.0 unstable [amd64])
208 Inst libc6 (1.0 unstable [amd64])
209 Inst libc6-dev (1.0 unstable [amd64])
210 Inst libfwibble1 (1.0 unstable [amd64])
211 Inst libfwibble-dev (1.0 unstable [amd64])
212 Inst linux-stuff (1.0 unstable [amd64])
213 Conf amdboot (1.0 unstable [amd64])
214 Conf doxygen (1.0 unstable [amd64])
215 Conf libc6 (1.0 unstable [amd64])
216 Conf libc6-dev (1.0 unstable [amd64])
217 Conf libfwibble1 (1.0 unstable [amd64])
218 Conf libfwibble-dev (1.0 unstable [amd64])
219 Conf linux-stuff (1.0 unstable [amd64])' aptget build-dep apt -s
220
221 testequal 'Reading package lists...
222 Building dependency tree...
223 The following NEW packages will be installed:
224 amdboot arm-stuff:armel doxygen libc6 libc6:armel libc6-dev libc6-dev:armel
225 libfwibble-dev:armel libfwibble1:armel
226 0 upgraded, 9 newly installed, 0 to remove and 2 not upgraded.
227 Inst amdboot (1.0 unstable [amd64])
228 Inst arm-stuff:armel (1.0 unstable [armel])
229 Inst doxygen (1.0 unstable [amd64])
230 Inst libc6 (1.0 unstable [amd64])
231 Inst libc6:armel (1.0 unstable [armel])
232 Inst libc6-dev (1.0 unstable [amd64])
233 Inst libc6-dev:armel (1.0 unstable [armel])
234 Inst libfwibble1:armel (1.0 unstable [armel])
235 Inst libfwibble-dev:armel (1.0 unstable [armel])
236 Conf amdboot (1.0 unstable [amd64])
237 Conf arm-stuff:armel (1.0 unstable [armel])
238 Conf doxygen (1.0 unstable [amd64])
239 Conf libc6 (1.0 unstable [amd64])
240 Conf libc6:armel (1.0 unstable [armel])
241 Conf libc6-dev (1.0 unstable [amd64])
242 Conf libc6-dev:armel (1.0 unstable [armel])
243 Conf libfwibble1:armel (1.0 unstable [armel])
244 Conf libfwibble-dev:armel (1.0 unstable [armel])' aptget build-dep apt -s -a armel
245
246 configarchitecture 'armel' 'amd64'
247
248 # cool 0.5 is not M-A: allowed, so amd64 is not acceptable
249 testequal 'Reading package lists...
250 Building dependency tree...
251 The following packages will be REMOVED:
252 cool:amd64
253 The following NEW packages will be installed:
254 amdboot:amd64 arm-stuff cool doxygen libc6 libc6-dev libfwibble-dev
255 libfwibble1
256 0 upgraded, 8 newly installed, 1 to remove and 1 not upgraded.
257 Remv cool:amd64 [0.5]
258 Inst amdboot:amd64 (1.0 unstable [amd64])
259 Inst arm-stuff (1.0 unstable [armel])
260 Inst cool (1.0 unstable [armel])
261 Inst doxygen (1.0 unstable [armel])
262 Inst libc6 (1.0 unstable [armel])
263 Inst libc6-dev (1.0 unstable [armel])
264 Inst libfwibble1 (1.0 unstable [armel])
265 Inst libfwibble-dev (1.0 unstable [armel])
266 Conf amdboot:amd64 (1.0 unstable [amd64])
267 Conf arm-stuff (1.0 unstable [armel])
268 Conf cool (1.0 unstable [armel])
269 Conf doxygen (1.0 unstable [armel])
270 Conf libc6 (1.0 unstable [armel])
271 Conf libc6-dev (1.0 unstable [armel])
272 Conf libfwibble1 (1.0 unstable [armel])
273 Conf libfwibble-dev (1.0 unstable [armel])' aptget build-dep apt -s
274
275 testequal 'Reading package lists...
276 Building dependency tree...
277 The following NEW packages will be installed:
278 amdboot:amd64 doxygen libc6:amd64 libc6 libc6-dev:amd64 libc6-dev
279 libfwibble-dev:amd64 libfwibble1:amd64 linux-stuff:amd64
280 0 upgraded, 9 newly installed, 0 to remove and 2 not upgraded.
281 Inst amdboot:amd64 (1.0 unstable [amd64])
282 Inst doxygen (1.0 unstable [armel])
283 Inst libc6:amd64 (1.0 unstable [amd64])
284 Inst libc6 (1.0 unstable [armel])
285 Inst libc6-dev:amd64 (1.0 unstable [amd64])
286 Inst libc6-dev (1.0 unstable [armel])
287 Inst libfwibble1:amd64 (1.0 unstable [amd64])
288 Inst libfwibble-dev:amd64 (1.0 unstable [amd64])
289 Inst linux-stuff:amd64 (1.0 unstable [amd64])
290 Conf amdboot:amd64 (1.0 unstable [amd64])
291 Conf doxygen (1.0 unstable [armel])
292 Conf libc6:amd64 (1.0 unstable [amd64])
293 Conf libc6 (1.0 unstable [armel])
294 Conf libc6-dev:amd64 (1.0 unstable [amd64])
295 Conf libc6-dev (1.0 unstable [armel])
296 Conf libfwibble1:amd64 (1.0 unstable [amd64])
297 Conf libfwibble-dev:amd64 (1.0 unstable [amd64])
298 Conf linux-stuff:amd64 (1.0 unstable [amd64])' aptget build-dep apt -s -a amd64