#!/bin/sh set -e TESTDIR=$(readlink -f $(dirname $0)) . $TESTDIR/framework setupenvironment configarchitecture "i386" if [ ! -x ${BUILDDIRECTORY}/apt ]; then msgmsg "No ${BUILDDIRECTORY}/apt" msgskip exit 0 fi insertpackage 'unstable' 'foo' 'all' '1.0' insertinstalledpackage 'bar' 'i386' '1.0' insertinstalledpackage 'foobar' 'i386' '1.0' insertpackage 'unstable' 'foobar' 'i386' '2.0' insertinstalledpackage 'baz' 'all' '0.1' insertpackage 'testing' 'baz' 'all' '1.0' insertpackage 'unstable' 'baz' 'all' '2.0' setupaptarchive APTARCHIVE=$(readlink -f ./aptarchive) testequal "Listing... bar/now 1.0 i386 [installed,local] baz/unstable 2.0 all [upgradable from: 0.1] foo/unstable 1.0 all foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list testequal "Listing... foo/unstable 1.0 all foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list "foo*" testequal "Listing... baz/unstable 2.0 all [upgradable from: 0.1] foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list --upgradable # FIXME: hm, hm - does it make sense to have this different? shouldn't # we use "installed,upgradable" consitently? testequal "Listing... bar/now 1.0 i386 [installed,local] baz/now 0.1 all [installed,upgradable to: 2.0] foobar/now 1.0 i386 [installed,upgradable to: 2.0]" apt list --installed testequal "Listing... foobar/unstable 2.0 i386 [upgradable from: 1.0] foobar/now 1.0 i386 [installed,upgradable to: 2.0] " apt list foobar --all-versions testequal "Listing... bar/now 1.0 i386 [installed,local] an autogenerated dummy bar=1.0/installed " apt list bar --verbose # test for dpkg ^rc state insertinstalledpackage 'conf-only' 'i386' '1.0' '' '' 'deinstall ok config-files' testequal "Listing... conf-only/now 1.0 i386 [residual-config]" apt list conf-only # ensure that the users learns about multiple versions too testequal "Listing... baz/unstable 2.0 all [upgradable from: 0.1] N: There are 2 additional versions. Please use the '-a' switch to see them." apt list baz -o quiet=0