diff options
author | David Kalnischkies <david@kalnischkies.de> | 2015-04-28 23:42:03 +0200 |
---|---|---|
committer | David Kalnischkies <david@kalnischkies.de> | 2015-05-11 17:22:32 +0200 |
commit | 3f732aa6ad0a81b6a6942a61fd5ed26a26590e8e (patch) | |
tree | 09c15e827f7301710818afe828f7e2eae593fb6f /test/integration/test-bug-543966-downgrade-below-1000-pin | |
parent | f492283b4369ed0711f5f538b6d5fe61a8a75a0f (diff) |
a pin of 1000 always means downgrade allowed
The documentation says this, but the code only agreed while evaluating
specific packages, but not generics. These needed a pin above 1000 to
have the same effect.
The code causing this makes references to a 'second pesduo status file',
but nowhere is explained what this might stand for and/or what it was,
so we do the only reasonable thing: Remove all references and do as
documented.
Diffstat (limited to 'test/integration/test-bug-543966-downgrade-below-1000-pin')
-rwxr-xr-x | test/integration/test-bug-543966-downgrade-below-1000-pin | 84 |
1 files changed, 46 insertions, 38 deletions
diff --git a/test/integration/test-bug-543966-downgrade-below-1000-pin b/test/integration/test-bug-543966-downgrade-below-1000-pin index d37539b9f..485df999c 100755 --- a/test/integration/test-bug-543966-downgrade-below-1000-pin +++ b/test/integration/test-bug-543966-downgrade-below-1000-pin @@ -24,58 +24,66 @@ testsuccessequal "base-files: 5.0.0 0 500 file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=0 -echo 'Package: base-files +writepin() { + echo "Package: $1 Pin: release a=unstable -Pin-Priority: 99' > rootdir/etc/apt/preferences +Pin-Priority: $2" > rootdir/etc/apt/preferences +} -testsuccessequal "base-files: + + +testpinning() { + local PKGPIN='' + local PKGPINPRIO='0' + local REPPINPRIO='' + if [ "$1" != '*' ]; then + PKGPINPRIO='' + REPPINPRIO=' 500' + PKGPIN='Package pin: 5.0.0 + ' + fi + writepin "$1" '99' + testsuccessequal "base-files: Installed: 5.0.0-1 Candidate: 5.0.0-1 - Package pin: 5.0.0 - Version table: - *** 5.0.0-1 99 + ${PKGPIN}Version table: + *** 5.0.0-1 ${PKGPINPRIO:-99} 100 $STATUS - 5.0.0 99 - 500 file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=99 + 5.0.0 ${PKGPINPRIO:-99} + ${REPPINPRIO:- 99} file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=99 -echo 'Package: base-files -Pin: release a=unstable -Pin-Priority: 100' > rootdir/etc/apt/preferences - -testsuccessequal "base-files: + writepin "$1" '100' + testsuccessequal "base-files: Installed: 5.0.0-1 Candidate: 5.0.0-1 - Package pin: 5.0.0 - Version table: - *** 5.0.0-1 100 + ${PKGPIN}Version table: + *** 5.0.0-1 ${PKGPINPRIO:-100} 100 $STATUS - 5.0.0 100 - 500 file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=100 + 5.0.0 ${PKGPINPRIO:-100} + ${REPPINPRIO:- 100} file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=100 -echo 'Package: base-files -Pin: release a=unstable -Pin-Priority: 999' > rootdir/etc/apt/preferences - -testsuccessequal "base-files: + writepin "$1" '999' + testsuccessequal "base-files: Installed: 5.0.0-1 Candidate: 5.0.0-1 - Package pin: 5.0.0 - Version table: - *** 5.0.0-1 999 + ${PKGPIN}Version table: + *** 5.0.0-1 ${PKGPINPRIO:-999} 100 $STATUS - 5.0.0 999 - 500 file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=999 - -echo 'Package: base-files -Pin: release a=unstable -Pin-Priority: 1000' > rootdir/etc/apt/preferences + 5.0.0 ${PKGPINPRIO:-999} + ${REPPINPRIO:- 999} file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=999 -testsuccessequal "base-files: + writepin "$1" '1000' + testsuccessequal "base-files: Installed: 5.0.0-1 Candidate: 5.0.0 - Package pin: 5.0.0 - Version table: - *** 5.0.0-1 1000 + ${PKGPIN}Version table: + *** 5.0.0-1 ${PKGPINPRIO:-1000} 100 $STATUS - 5.0.0 1000 - 500 file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=1000 + 5.0.0 ${PKGPINPRIO:-1000} + ${REPPINPRIO:-1000} file:${APTARCHIVE} unstable/main i386 Packages" aptcache policy base-files -o apt::pin=1000 +} + +msgmsg 'Tests with generic-form pin' +testpinning '*' +msgmsg 'Tests with specific-form pin' +testpinning 'base-files' |