]> git.saurik.com Git - apt.git/blob - test/integration/test-apt-cli-list
improve partial/ cleanup in abort and failure cases
[apt.git] / test / integration / test-apt-cli-list
1 #!/bin/sh
2 set -e
3
4 TESTDIR=$(readlink -f $(dirname $0))
5 . $TESTDIR/framework
6
7 setupenvironment
8 configarchitecture "i386"
9
10 if [ ! -x ${BUILDDIRECTORY}/apt ]; then
11 msgmsg "No ${BUILDDIRECTORY}/apt"
12 msgskip
13 exit 0
14 fi
15
16 insertpackage 'unstable' 'foo' 'all' '1.0'
17 insertinstalledpackage 'bar' 'i386' '1.0'
18
19 insertinstalledpackage 'foobar' 'i386' '1.0'
20 insertpackage 'unstable' 'foobar' 'i386' '2.0'
21
22 insertinstalledpackage 'baz' 'all' '0.1'
23 insertpackage 'testing' 'baz' 'all' '1.0'
24 insertpackage 'unstable' 'baz' 'all' '2.0'
25
26 setupaptarchive
27
28 APTARCHIVE=$(readlink -f ./aptarchive)
29
30 testsuccessequal "Listing...
31 bar/now 1.0 i386 [installed,local]
32 baz/unstable 2.0 all [upgradable from: 0.1]
33 foo/unstable 1.0 all
34 foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list
35
36 testsuccessequal "Listing...
37 foo/unstable 1.0 all
38 foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list "foo*"
39
40 testsuccessequal "Listing...
41 baz/unstable 2.0 all [upgradable from: 0.1]
42 foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list --upgradable
43
44 # FIXME: hm, hm - does it make sense to have this different? shouldn't
45 # we use "installed,upgradable" consitently?
46 testsuccessequal "Listing...
47 bar/now 1.0 i386 [installed,local]
48 baz/now 0.1 all [installed,upgradable to: 2.0]
49 foobar/now 1.0 i386 [installed,upgradable to: 2.0]" apt list --installed
50
51 testsuccessequal "Listing...
52 bar/now 1.0 i386 [installed,local]
53
54 foobar/unstable 2.0 i386 [upgradable from: 1.0]
55 foobar/now 1.0 i386 [installed,upgradable to: 2.0]
56 " apt list bar foobar --all-versions
57
58 testsuccessequal "Listing...
59 bar/now 1.0 i386 [installed,local]
60 an autogenerated dummy bar=1.0/installed
61 " apt list bar --verbose
62
63 # test for dpkg ^rc state
64 insertinstalledpackage 'conf-only' 'i386' '1.0' '' '' 'deinstall ok config-files'
65 testsuccessequal "Listing...
66 conf-only/now 1.0 i386 [residual-config]" apt list conf-only
67
68 # ensure that the users learns about multiple versions too
69 testsuccessequal "Listing...
70 baz/unstable 2.0 all [upgradable from: 0.1]
71 N: There are 2 additional versions. Please use the '-a' switch to see them." apt list baz -o quiet=0
72
73 # test format strings for machine parseable output
74 testsuccessequal 'bar - 1.0 - 1.0
75 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}"