| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- #!/bin/sh
- set -e
- TESTDIR=$(readlink -f $(dirname $0))
- . $TESTDIR/framework
- setupenvironment
- configarchitecture 'amd64' 'i386'
- insertpackage 'unstable' 'bar' 'amd64,i386' '1'
- insertpackage 'unstable' 'uninstalled' 'all' '1'
- insertpackage 'unstable' 'uninstalled-native' 'amd64' '1'
- insertinstalledpackage 'foo' 'all' '1'
- insertinstalledpackage 'bar' 'amd64' '1'
- setupaptarchive
- # dpkg is "installed" by our test framework
- testdpkginstalled dpkg
- testnoautopkg() {
- testempty aptmark showauto
- testempty aptcache showauto
- testsuccessequal 'bar
- dpkg
- foo' aptmark showmanual
- testsuccessequal 'bar
- foo' aptmark showmanual bar foo uninstalled
- }
- testfooisauto() {
- testsuccessequal 'foo' aptmark showauto
- testsuccessequal 'foo' aptcache showauto
- testsuccessequal 'foo' aptmark showauto foo
- testsuccessequal 'foo' aptcache showauto foo
- testsuccessequal 'bar
- dpkg' aptmark showmanual
- testsuccessequal 'bar' aptmark showmanual bar
- }
- testmarkonpkgasauto() {
- testsuccess $1 $2 foo
- testfooisauto
- testsuccess $1 $2 foo
- testfooisauto
- testsuccess $1 $3 foo
- testnoautopkg
- testsuccess $1 $3 foo
- testnoautopkg
- }
- testfailureequal 'E: No packages found' aptmark auto
- testfailureequal 'E: No packages found' aptmark manual
- testnoautopkg
- testmarkonpkgasauto 'aptmark' 'auto' 'manual'
- testmarkonpkgasauto 'aptmark' 'markauto' 'unmarkauto'
- testmarkonpkgasauto 'aptget' 'markauto' 'unmarkauto'
- testnoholdpkg() {
- testempty aptmark showhold
- testempty aptmark showholds # typical "typo"
- testempty aptmark showhold dpkg
- testempty aptmark showholds dpkg
- }
- testpkgonhold() {
- testsuccessequal "$1" aptmark showhold
- testsuccessequal "$1" aptmark showholds
- testsuccessequal "$1" aptmark showhold $1
- testsuccessequal "$1" aptmark showholds $1
- }
- testmarkonepkgashold() {
- testsuccess aptmark hold $1
- testpkgonhold $1
- testsuccess aptmark hold $1
- testpkgonhold $1
- testsuccess aptmark unhold $1
- testnoholdpkg
- testsuccess aptmark unhold $1
- testnoholdpkg
- }
- testfailureequal 'E: No packages found' aptmark hold
- testfailureequal 'E: No packages found' aptmark unhold
- testnoholdpkg
- testmarkonepkgashold 'foo'
- testmarkonepkgashold 'bar'
- msgtest 'dpkg supports --merge-avail via' 'stdin'
- if dpkg --merge-avail - < /dev/null >/dev/null 2>&1; then
- msgpass
- else
- msgskip 'dpkg version too old'
- exit 0
- fi
- testmarkonepkgashold 'uninstalled'
- testmarkonepkgashold 'uninstalled-native'
- testsuccessequal 'uninstalled set on hold.' aptmark hold uninstalled
- testsuccessequal 'uninstalled-native set on hold.' aptmark hold uninstalled-native
- #FIXME: holds on uninstalled packages are not persistent in dpkg
- testsuccessequal 'Reading package lists...
- Building dependency tree...
- Reading state information...
- The following NEW packages will be installed:
- uninstalled uninstalled-native
- The following held packages will be changed:
- uninstalled-native
- 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
- Inst uninstalled (1 unstable [all])
- Inst uninstalled-native (1 unstable [amd64])
- Conf uninstalled (1 unstable [all])
- Conf uninstalled-native (1 unstable [amd64])' aptget install uninstalled uninstalled-native -s
|