99 lines
2.2 KiB
Plaintext
99 lines
2.2 KiB
Plaintext
# rpmvercmp.at: rpm version comparison tests
|
|
|
|
AT_BANNER([RPM version comparison])
|
|
|
|
# ------------------------------
|
|
# Test normal upgrade
|
|
AT_SETUP([rpm -U upgrade to newer])
|
|
AT_CHECK([
|
|
RPMDB_CLEAR
|
|
rm -rf "${TOPDIR}"
|
|
|
|
for v in "1.0" "2.0"; do
|
|
run rpmbuild --quiet -bb \
|
|
--define "ver $v" \
|
|
${RPMDATA}/SPECS/versiontest.spec
|
|
done
|
|
|
|
runroot rpm -U "${TOPDIR}"/RPMS/noarch/versiontest-1.0-1.noarch.rpm
|
|
runroot rpm -U "${TOPDIR}"/RPMS/noarch/versiontest-2.0-1.noarch.rpm
|
|
],
|
|
[0],
|
|
[ignore],
|
|
[ignore])
|
|
AT_CLEANUP
|
|
|
|
# Test upgrading to older package (should fail)
|
|
AT_SETUP([rpm -U upgrade to older])
|
|
AT_CHECK([
|
|
RPMDB_CLEAR
|
|
|
|
runroot rpm -U "${TOPDIR}"/RPMS/noarch/versiontest-2.0-1.noarch.rpm
|
|
runroot rpm -U "${TOPDIR}"/RPMS/noarch/versiontest-1.0-1.noarch.rpm
|
|
],
|
|
[2],
|
|
[ignore],
|
|
[ignore])
|
|
AT_CLEANUP
|
|
|
|
# Test downgrading to older package with --oldpackage
|
|
AT_SETUP([rpm -U --oldpackage downgrade])
|
|
AT_CHECK([
|
|
RPMDB_CLEAR
|
|
|
|
runroot rpm -U "${TOPDIR}"/RPMS/noarch/versiontest-2.0-1.noarch.rpm
|
|
runroot rpm -U --oldpackage "${TOPDIR}"/RPMS/noarch/versiontest-1.0-1.noarch.rpm
|
|
],
|
|
[0],
|
|
[ignore],
|
|
[ignore])
|
|
AT_CLEANUP
|
|
|
|
# Test upgrade of different versions in same transaction
|
|
# XXX test that only 2.0-1 was installed
|
|
AT_SETUP([rpm -U two versions of same package])
|
|
AT_CHECK([
|
|
RPMDB_CLEAR
|
|
|
|
runroot rpm -U \
|
|
"${TOPDIR}"/RPMS/noarch/versiontest-1.0-1.noarch.rpm \
|
|
"${TOPDIR}"/RPMS/noarch/versiontest-2.0-1.noarch.rpm
|
|
],
|
|
[0],
|
|
[ignore],
|
|
[ignore])
|
|
AT_CLEANUP
|
|
|
|
# Test install of two different versions in same transaction
|
|
# TODO: test that both got installed
|
|
AT_SETUP([rpm -i two versions of same package])
|
|
AT_CHECK([
|
|
RPMDB_CLEAR
|
|
|
|
runroot rpm -i \
|
|
"${TOPDIR}"/RPMS/noarch/versiontest-1.0-1.noarch.rpm \
|
|
"${TOPDIR}"/RPMS/noarch/versiontest-2.0-1.noarch.rpm
|
|
],
|
|
[0],
|
|
[ignore],
|
|
[ignore])
|
|
AT_CLEANUP
|
|
|
|
# Test install of two different versions in same transaction
|
|
# TODO: test only one was installed
|
|
AT_SETUP([rpm -i identical versions of same package])
|
|
AT_CHECK([
|
|
RPMDB_CLEAR
|
|
|
|
# TODO test just one was installed, this only emits warnings
|
|
runroot rpm -ivh \
|
|
"${TOPDIR}"/RPMS/noarch/versiontest-1.0-1.noarch.rpm \
|
|
"${TOPDIR}"/RPMS/noarch/versiontest-1.0-1.noarch.rpm
|
|
],
|
|
[0],
|
|
[ignore],
|
|
[ignore])
|
|
AT_CLEANUP
|
|
|
|
# TODO: the same with epoch vs no epoch
|