]> git.saurik.com Git - apt.git/blobdiff - test/integration/test-apt-cli-list
sync TFRewrite*Order arrays with dpkg and dak
[apt.git] / test / integration / test-apt-cli-list
index 8d5df90510d7b11801f3dbdda0701e66c5779c87..d3c44e1262406f5105dcb41308683916fa45bcdc 100755 (executable)
@@ -7,41 +7,69 @@ TESTDIR=$(readlink -f $(dirname $0))
 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'
 
+insertinstalledpackage 'baz' 'all' '0.1'
+insertpackage 'testing' 'baz' 'all' '1.0'
+insertpackage 'unstable' 'baz' 'all' '2.0'
+
 setupaptarchive
 
 APTARCHIVE=$(readlink -f ./aptarchive)
 
 setupaptarchive
 
 APTARCHIVE=$(readlink -f ./aptarchive)
 
-testequal "Listing...
-bar/now 1.0 [installed,local] i386
+testsuccessequal "Listing...
+bar/now 1.0 i386 [installed,local]
+baz/unstable 2.0 all [upgradable from: 0.1]
 foo/unstable 1.0 all
 foo/unstable 1.0 all
-foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list
+foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list
 
 
-testequal "Listing...
+testsuccessequal "Listing...
 foo/unstable 1.0 all
 foo/unstable 1.0 all
-foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list "foo*"
+foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list "foo*"
 
 
-testequal "Listing...
-foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list --upgradable
+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?
 
 # FIXME: hm, hm - does it make sense to have this different? shouldn't
 #        we use "installed,upgradable" consitently?
-testequal "Listing...
-bar/now 1.0 [installed,local] i386
-foobar/now 1.0 [installed,upgradable to: 2.0] i386" apt list --installed
+testsuccessequal "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
+
+testsuccessequal "Listing...
+bar/now 1.0 i386 [installed,local]
 
 
-testequal "Listing...
-foobar/unstable 2.0 [upgradable from: 1.0] i386
-foobar/now 1.0 [installed,upgradable to: 2.0] i386
-" apt list foobar --all-versions
+foobar/unstable 2.0 i386 [upgradable from: 1.0]
+foobar/now 1.0 i386 [installed,upgradable to: 2.0]
+" apt list bar foobar --all-versions
 
 
-testequal "Listing...
-bar/now 1.0 [installed,local] i386
+testsuccessequal "Listing...
+bar/now 1.0 i386 [installed,local]
   an autogenerated dummy bar=1.0/installed
 " apt list bar --verbose
 
   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'
+testsuccessequal "Listing...
+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
+
+# 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}"