]> git.saurik.com Git - apt.git/blame - test/integration/test-apt-cache
eliminate dead file-provides code in cache generation
[apt.git] / test / integration / test-apt-cache
CommitLineData
081c9d44
DK
1#!/bin/sh
2set -e
3
4TESTDIR=$(readlink -f $(dirname $0))
5. $TESTDIR/framework
6
7setupenvironment
8configarchitecture 'amd64' 'i386'
9
10DESCR='Some description
11 That has multiple lines'
12insertpackage 'unstable' 'fancy' 'all' '1'
13insertpackage 'unstable,installed' 'foo' 'all' '1' 'Depends: bar
14Conflicts: foobar
15Recommends: cool (>= 2) | cooler (<< 5)' "$DESCR"
16insertpackage 'unstable' 'bar' 'all' '1' 'Depends: bar
17Breaks: foo (<< 1)
18Replaces: foo (<< 1)' "$DESCR"
8c7af4d4
DK
19insertpackage 'unstable' 'specific' 'all' '1' 'Depends: bar:i386, specific:amd64
20Breaks: foo:amd64 (<< 1)
21Replaces: foo:i386 (<< 1)' "$DESCR"
081c9d44
DK
22
23setupaptarchive
24
25# dpkg is installed by our framework
26testdpkginstalled 'dpkg'
27testempty aptcache unmet dpkg
28
29# FIXME: Find some usecase for unmet as it seems kinda useless/broken
30#testsuccess aptcache unmet
31#testsuccess aptcache unmet foo
32
33# not too useful to test, but makes coverage green…
34testsuccess aptcache stats
35cp rootdir/tmp/testsuccess.output stats.output
36testsuccess test -s stats.output
37testsuccess aptcache xvcg foo
38cp rootdir/tmp/testsuccess.output xvcg.output
39testsuccess test -s xvcg.output
40testsuccess aptcache dotty foo
41cp rootdir/tmp/testsuccess.output dotty.output
42testsuccess test -s dotty.output
43# for this, even the sourcecode says it is useless (expect debugging)
44testsuccess aptcache dump
45cp rootdir/tmp/testsuccess.output dump.output
46testsuccess test -s dump.output
47
25b86db1 48testsuccessequal 'dpkg
081c9d44 49bar
8c7af4d4 50specific
081c9d44
DK
51fancy
52foo' aptcache pkgnames
25b86db1
DK
53testsuccessequal 'bar' aptcache pkgnames bar
54testsuccessequal 'fancy
081c9d44
DK
55foo' aptcache pkgnames f
56
1da3b7b8 57testsuccessequal " foo | 1 | file:$(readlink -f .)/aptarchive unstable/main amd64 Packages" aptcache madison foo
081c9d44
DK
58
59### depends
60
25b86db1 61testsuccessequal 'foo
081c9d44 62 Depends: bar
081c9d44 63 Conflicts: <foobar>
fd23676e
DK
64 |Recommends: <cool>
65 Recommends: <cooler>' aptcache depends foo
25b86db1 66testsuccessequal 'foo
081c9d44 67 Depends: bar
081c9d44 68 Conflicts: <foobar>
8c7af4d4
DK
69 |Recommends: <cool>
70 Recommends: <cooler>' aptcache depends foo --implicit
71testsuccessequal 'foo
72 Depends: bar
73 Conflicts: <foobar>
fd23676e 74 Recommends: <cool>' aptcache depends foo -o APT::Cache::ShowOnlyFirstOr=1
25b86db1 75testsuccessequal 'foo
081c9d44 76 Depends: bar
081c9d44 77 Conflicts: <foobar>
8c7af4d4
DK
78 Recommends: <cool>' aptcache depends foo -o APT::Cache::ShowOnlyFirstOr=1 --implicit
79testsuccessequal 'foo
80 Depends: bar
81 Conflicts: <foobar>
fd23676e
DK
82 |Recommends: <cool> (>= 2)
83 Recommends: <cooler> (<< 5)' aptcache depends foo -o APT::Cache::ShowVersion=1
25b86db1 84testsuccessequal 'foo
081c9d44
DK
85 Depends: bar
86 Conflicts: <foobar>
8c7af4d4
DK
87 |Recommends: <cool> (>= 2)
88 Recommends: <cooler> (<< 5)' aptcache depends foo -o APT::Cache::ShowVersion=1 --implicit
25b86db1 89testsuccessequal 'foo
8c7af4d4
DK
90 Depends: bar
91 Conflicts: <foobar>' aptcache depends foo --no-recommends
92testsuccessequal 'foo
93 Depends: bar
bb0f6a34 94 Conflicts: <foobar>' aptcache depends foo --no-recommends --implicit
8c7af4d4
DK
95testsuccessequal 'foo
96 Depends: bar' aptcache depends foo --important --implicit
25b86db1 97testsuccessequal 'foo
8c7af4d4
DK
98 Conflicts: <foobar>' aptcache depends foo --important --no-depends --conflicts
99testsuccessequal 'foo
bb0f6a34 100 Conflicts: <foobar>' aptcache depends foo --important --no-depends --conflicts --implicit
8c7af4d4
DK
101testsuccessequal 'foo
102 Depends: bar
081c9d44 103 Conflicts: <foobar>
8c7af4d4
DK
104 |Recommends: <cool>
105 Recommends: <cooler>
106bar
107 Depends: bar
108 Breaks: foo
109 Replaces: foo
110<foobar>
111<cool>
112<cooler>' aptcache depends foo --recurse
25b86db1 113testsuccessequal 'foo
081c9d44 114 Depends: bar
081c9d44 115 Conflicts: <foobar>
fd23676e
DK
116 |Recommends: <cool>
117 Recommends: <cooler>
081c9d44
DK
118bar
119 Depends: bar
120 Breaks: foo
081c9d44 121 Replaces: foo
bb0f6a34 122 Breaks: <foo:i386>
081c9d44 123 Replaces: <foo:i386>
081c9d44 124<foobar>
fd23676e
DK
125<cool>
126<cooler>
8c7af4d4
DK
127<foo:i386>' aptcache depends foo --recurse --implicit
128testsuccessequal 'foo
129 Depends: bar
130bar
131 Depends: bar
132 Replaces: foo' aptcache depends foo --recurse --important --replaces
25b86db1 133testsuccessequal 'foo
081c9d44
DK
134 Depends: bar
135bar
136 Depends: bar
137 Replaces: foo
138 Replaces: <foo:i386>
8c7af4d4
DK
139<foo:i386>' aptcache depends foo --recurse --important --replaces --implicit
140testsuccessequal 'bar
141 Depends: bar
142 Breaks: foo
143 Replaces: foo' aptcache depends bar
144testsuccessequal 'bar
145 Depends: bar
146 Breaks: foo
8c7af4d4 147 Replaces: foo
bb0f6a34 148 Breaks: <foo:i386>
8c7af4d4
DK
149 Replaces: <foo:i386>' aptcache depends bar --implicit
150testsuccessequal 'specific
151 Depends: <bar:i386>
152 Depends: specific:amd64
153 Breaks: foo:amd64
154 Replaces: <foo:i386>' aptcache depends specific
155testsuccessequal 'specific
156 Depends: <bar:i386>
157 Depends: specific:amd64
158 Breaks: foo:amd64
159 Replaces: <foo:i386>' aptcache depends specific --implicit
081c9d44
DK
160
161## rdpends
162
25b86db1 163testsuccessequal 'foo
081c9d44
DK
164Reverse Depends:
165 bar
8c7af4d4 166 specific
081c9d44 167 bar' aptcache rdepends foo
25b86db1 168testsuccessequal 'foo
081c9d44 169Reverse Depends:
b291aa59 170 Breaks: bar
8c7af4d4 171 Breaks: specific
b291aa59 172 Replaces: bar' aptcache rdepends foo -o APT::Cache::ShowDependencyType=1
25b86db1 173testsuccessequal 'foo
081c9d44 174Reverse Depends:
b291aa59 175 Breaks: bar (<< 1)
8c7af4d4 176 Breaks: specific (<< 1)
b291aa59 177 Replaces: bar (<< 1)' aptcache rdepends foo -o APT::Cache::ShowDependencyType=1 -o APT::Cache::ShowVersion=1
25b86db1 178testsuccessequal 'foo
081c9d44 179Reverse Depends:
8c7af4d4
DK
180 Breaks: bar (<< 1)
181 Breaks: specific (<< 1)' aptcache rdepends foo -o APT::Cache::ShowDependencyType=1 -o APT::Cache::ShowVersion=1 --important --breaks