2 AT_BANNER([RPM file replacement])
4 AT_SETUP([upgrade to/from regular file])
9 tf="${RPMTEST}"/opt/foo
10 rm -rf "${tf}" "${tf}".rpm*
13 runroot rpmbuild --quiet -bb \
15 --define "filetype file" \
16 --define "filedata foo" \
17 /data/SPECS/replacetest.spec
19 runroot rpmbuild --quiet -bb \
21 --define "filetype file" \
22 --define "filedata bar" \
23 /data/SPECS/replacetest.spec
25 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
27 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
29 runroot rpm -U --oldpackage "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
40 AT_SETUP([upgrade regular file to/from broken link])
41 AT_KEYWORDS([install])
45 tf="${RPMTEST}"/opt/foo
46 rm -rf "${RPMTEST}"/opt/*
49 runroot rpmbuild --quiet -bb \
51 --define "filetype file" \
52 --define "filedata foo" \
53 /data/SPECS/replacetest.spec
55 runroot rpmbuild --quiet -bb \
57 --define "filetype link" \
58 --define "filedata stuff" \
59 /data/SPECS/replacetest.spec
61 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
63 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
65 runroot rpm -U --oldpackage "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
76 AT_SETUP([upgrade regular file to/from file link])
77 AT_KEYWORDS([install])
81 tf="${RPMTEST}"/opt/foo
82 rm -rf "${RPMTEST}"/opt/*
85 runroot rpmbuild --quiet -bb \
87 --define "filetype file" \
88 --define "filedata foo" \
89 /data/SPECS/replacetest.spec
91 runroot rpmbuild --quiet -bb \
93 --define "filetype link" \
94 --define "filedata goo" \
95 /data/SPECS/replacetest.spec
97 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
99 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
101 runroot rpm -U --oldpackage "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
112 AT_SETUP([upgrade broken link to broken link])
113 AT_KEYWORDS([install])
117 tf="${RPMTEST}"/opt/foo
118 rm -rf "${RPMTEST}"/opt/*
121 runroot rpmbuild --quiet -bb \
123 --define "filetype link" \
124 --define "filedata stiff" \
125 /data/SPECS/replacetest.spec
127 runroot rpmbuild --quiet -bb \
129 --define "filetype link" \
130 --define "filedata stuff" \
131 /data/SPECS/replacetest.spec
133 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
135 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
145 AT_SETUP([upgrade file link to file link])
146 AT_KEYWORDS([install])
150 tf="${RPMTEST}"/opt/foo
151 rm -rf "${RPMTEST}"/opt/*
154 runroot rpmbuild --quiet -bb \
156 --define "filetype link" \
157 --define "filedata goo" \
158 /data/SPECS/replacetest.spec
160 runroot rpmbuild --quiet -bb \
162 --define "filetype link" \
163 --define "filedata goo" \
164 /data/SPECS/replacetest.spec
166 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
168 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
178 AT_SETUP([upgrade directory link to directory link])
179 AT_KEYWORDS([install])
183 tf="${RPMTEST}"/opt/foo
184 rm -rf "${RPMTEST}"/opt/*
187 runroot rpmbuild --quiet -bb \
189 --define "filetype link" \
190 --define "filedata zoo" \
191 /data/SPECS/replacetest.spec
193 runroot rpmbuild --quiet -bb \
195 --define "filetype link" \
196 --define "filedata zoo" \
197 /data/SPECS/replacetest.spec
199 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
201 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
211 AT_SETUP([upgrade regular file to directory])
212 AT_KEYWORDS([install])
216 tf="${RPMTEST}"/opt/foo
217 rm -rf "${RPMTEST}"/opt/*
220 runroot rpmbuild --quiet -bb \
222 --define "filetype file" \
223 --define "filedata foo" \
224 /data/SPECS/replacetest.spec
226 runroot rpmbuild --quiet -bb \
228 --define "filetype dir" \
229 /data/SPECS/replacetest.spec
231 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
233 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
242 AT_SETUP([upgrade broken link to directory])
243 AT_KEYWORDS([install])
247 tf="${RPMTEST}"/opt/foo
248 rm -rf "${RPMTEST}"/opt/*
251 runroot rpmbuild --quiet -bb \
253 --define "filetype link" \
254 --define "filedata other" \
255 /data/SPECS/replacetest.spec
257 runroot rpmbuild --quiet -bb \
259 --define "filetype dir" \
260 /data/SPECS/replacetest.spec
262 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
264 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
273 AT_SETUP([upgrade file link to directory])
274 AT_KEYWORDS([install])
278 tf="${RPMTEST}"/opt/foo
279 rm -rf "${RPMTEST}"/opt/*
282 runroot rpmbuild --quiet -bb \
284 --define "filetype link" \
285 --define "filedata goo" \
286 /data/SPECS/replacetest.spec
288 runroot rpmbuild --quiet -bb \
290 --define "filetype dir" \
291 /data/SPECS/replacetest.spec
293 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
295 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
304 AT_SETUP([upgrade directory link to directory])
305 AT_KEYWORDS([install])
309 tf="${RPMTEST}"/opt/foo
310 rm -rf "${RPMTEST}"/opt/*
313 runroot rpmbuild --quiet -bb \
315 --define "filetype link" \
316 --define "filedata zoo" \
317 /data/SPECS/replacetest.spec
319 runroot rpmbuild --quiet -bb \
321 --define "filetype dir" \
322 /data/SPECS/replacetest.spec
324 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
326 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
331 [ file /opt/foo from install of replacetest-2.0-1.noarch conflicts with file from package replacetest-1.0-1.noarch
335 AT_SETUP([upgrade empty directory to empty directory])
336 AT_KEYWORDS([install])
340 tf="${RPMTEST}"/opt/foo
341 rm -rf "${RPMTEST}"/opt/*
344 runroot rpmbuild --quiet -bb \
346 --define "filetype dir" \
347 /data/SPECS/replacetest.spec
349 runroot rpmbuild --quiet -bb \
351 --define "filetype dir" \
352 /data/SPECS/replacetest.spec
354 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
355 test -d "${tf}" && runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
363 AT_SETUP([upgrade empty directory to regular file])
364 AT_KEYWORDS([install])
368 tf="${RPMTEST}"/opt/foo
369 rm -rf "${RPMTEST}"/opt/*
372 runroot rpmbuild --quiet -bb \
374 --define "filetype dir" \
375 /data/SPECS/replacetest.spec
377 runroot rpmbuild --quiet -bb \
379 --define "filetype file" \
380 --define "filedata woot" \
381 /data/SPECS/replacetest.spec
383 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
384 test -d "${tf}" && runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
388 [ file /opt/foo from install of replacetest-2.0-1.noarch conflicts with file from package replacetest-1.0-1.noarch
392 AT_SETUP([upgrade locally symlinked directory])
393 AT_KEYWORDS([install])
397 tf="${RPMTEST}"/opt/foo
398 rm -rf "${RPMTEST}"/opt/*
401 runroot rpmbuild --quiet -bb \
403 --define "filetype datadir" \
404 --define "filedata README1" \
405 /data/SPECS/replacetest.spec
407 runroot rpmbuild --quiet -bb \
409 --define "filetype datadir" \
410 --define "filedata README2" \
411 /data/SPECS/replacetest.spec
413 mkdir "${RPMTEST}"/opt/f00f
414 ln -s f00f "${RPMTEST}"/opt/foo
415 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
416 test -L "${tf}" && test -d "${tf}" && runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
417 test -L "${tf}" && test -d "${tf}"
424 AT_SETUP([upgrade empty directory to broken link])
425 AT_KEYWORDS([install])
429 tf="${RPMTEST}"/opt/foo
430 rm -rf "${RPMTEST}"/opt/*
433 runroot rpmbuild --quiet -bb \
435 --define "filetype dir" \
436 /data/SPECS/replacetest.spec
438 runroot rpmbuild --quiet -bb \
440 --define "filetype link" \
441 --define "filedata woot" \
442 /data/SPECS/replacetest.spec
444 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
445 test -d "${tf}" && runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
449 [ file /opt/foo from install of replacetest-2.0-1.noarch conflicts with file from package replacetest-1.0-1.noarch
453 AT_SETUP([upgrade empty directory to file link])
454 AT_KEYWORDS([install])
458 tf="${RPMTEST}"/opt/foo
459 rm -rf "${RPMTEST}"/opt/*
462 runroot rpmbuild --quiet -bb \
464 --define "filetype dir" \
465 /data/SPECS/replacetest.spec
467 runroot rpmbuild --quiet -bb \
469 --define "filetype link" \
470 --define "filedata woot" \
471 /data/SPECS/replacetest.spec
473 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
474 test -d "${tf}" && runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
478 [ file /opt/foo from install of replacetest-2.0-1.noarch conflicts with file from package replacetest-1.0-1.noarch
482 AT_SETUP([upgrade removed empty directory to file link])
483 AT_KEYWORDS([install])
487 tf="${RPMTEST}"/opt/foo
488 rm -rf "${RPMTEST}"/opt/*
491 runroot rpmbuild --quiet -bb \
493 --define "filetype dir" \
494 /data/SPECS/replacetest.spec
496 runroot rpmbuild --quiet -bb \
498 --define "filetype link" \
499 --define "filedata goo" \
500 /data/SPECS/replacetest.spec
502 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
503 test -d "${tf}" && rmdir "${tf}" && runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
512 AT_SETUP([upgrade replaced empty directory to file link])
513 AT_KEYWORDS([install])
517 tf="${RPMTEST}"/opt/foo
518 rm -rf "${RPMTEST}"/opt/*
521 runroot rpmbuild --quiet -bb \
523 --define "filetype dir" \
524 /data/SPECS/replacetest.spec
526 runroot rpmbuild --quiet -bb \
528 --define "filetype link" \
529 --define "filedata goo" \
530 /data/SPECS/replacetest.spec
532 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
533 test -d "${tf}" && rmdir "${tf}" && ln -sf goo "${tf}" && runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm
542 AT_SETUP([upgrade empty directory to file link with pretrans])
543 AT_KEYWORDS([install])
547 tf="${RPMTEST}"/opt/foo
548 rm -rf "${RPMTEST}"/opt/*
551 runroot rpmbuild --quiet -bb \
553 --define "filetype dir" \
554 /data/SPECS/replacetest.spec
556 runroot rpmbuild --quiet -bb \
558 --define "filetype link" \
559 --define "filedata goo" \
560 --define "fixit posix.rmdir('/opt/foo')" \
561 /data/SPECS/replacetest.spec
563 runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-1.0-1.noarch.rpm
564 test -d "${tf}" && runroot rpm -U --test "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm && runroot rpm -U "${TOPDIR}"/RPMS/noarch/replacetest-2.0-1.noarch.rpm