]> git.saurik.com Git - apt.git/blobdiff - test/integration/test-apt-cli-list
add a testcase for support of various build-dependency types
[apt.git] / test / integration / test-apt-cli-list
index 6fc4bc7f6410715755322cea573ac690483a7fd9..f87208a082f692478b562a29ff9e9caa3888b4f5 100755 (executable)
@@ -1,58 +1,74 @@
 #!/bin/sh
 set -e
 
 #!/bin/sh
 set -e
 
-TESTDIR=$(readlink -f $(dirname $0))
-. $TESTDIR/framework
+TESTDIR="$(readlink -f "$(dirname "$0")")"
+. "$TESTDIR/framework"
 
 setupenvironment
 configarchitecture "i386"
 
 
 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'
 
 insertpackage 'unstable' 'foo' 'all' '1.0'
 insertinstalledpackage 'bar' 'i386' '1.0'
 
 insertinstalledpackage 'foobar' 'i386' '1.0'
 insertpackage 'unstable' 'foobar' 'i386' '2.0'
 
-setupaptarchive
+insertinstalledpackage 'baz' 'all' '0.1'
+insertpackage 'testing' 'baz' 'all' '1.0'
+insertpackage 'unstable' 'baz' 'all' '2.0'
 
 
-APTARCHIVE=$(readlink -f ./aptarchive)
+setupaptarchive
 
 
-testequal "Listing...
+testsuccessequal "Listing...
 bar/now 1.0 i386 [installed,local]
 bar/now 1.0 i386 [installed,local]
+baz/unstable 2.0 all [upgradable from: 0.1]
+dpkg/now 1.16.2+fake all [installed,local]
 foo/unstable 1.0 all
 foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list
 
 foo/unstable 1.0 all
 foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list
 
-testequal "Listing...
+testsuccessequal "Listing...
 foo/unstable 1.0 all
 foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list "foo*"
 
 foo/unstable 1.0 all
 foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list "foo*"
 
-testequal "Listing...
+testsuccessequal "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?
 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...
+testsuccessequal "Listing...
 bar/now 1.0 i386 [installed,local]
 bar/now 1.0 i386 [installed,local]
+baz/now 0.1 all [installed,upgradable to: 2.0]
+dpkg/now 1.16.2+fake all [installed,local]
 foobar/now 1.0 i386 [installed,upgradable to: 2.0]" apt list --installed
 
 foobar/now 1.0 i386 [installed,upgradable to: 2.0]" apt list --installed
 
-testequal "Listing...
+testsuccessequal "Listing...
+bar/now 1.0 i386 [installed,local]
+
 foobar/unstable 2.0 i386 [upgradable from: 1.0]
 foobar/now 1.0 i386 [installed,upgradable to: 2.0]
 foobar/unstable 2.0 i386 [upgradable from: 1.0]
 foobar/now 1.0 i386 [installed,upgradable to: 2.0]
-" apt list foobar --all-versions
+" apt list bar foobar --all-versions
 
 
-testequal "Listing...
+testsuccessequal "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'
 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...
+testsuccessequal "Listing...
 conf-only/now 1.0 i386 [residual-config]" apt list conf-only
 
 conf-only/now 1.0 i386 [residual-config]" apt list conf-only
 
+# ensure that the users learns about multiple versions too
+testsuccessequal "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
+testsuccessequal 'Listing...
+baz/unstable 2.0 all [upgradable from: 0.1]
+baz/testing 1.0 all
+baz/now 0.1 all [installed,upgradable to: 2.0]
+' apt list baz -o quiet=0 -a
+
+# test format strings for machine parseable output
+testsuccessequal 'bar - 1.0 - 1.0
+baz - 0.1 - 2.0' apt list -qq bar baz  -o APT::Cmd::use-format=true  -o APT::Cmd::format="\${Package} - \${installed:Version} - \${candidate:Version}"