4 TESTDIR
=$
(readlink
-f $
(dirname $0))
7 configarchitecture
'amd64'
9 insertpackage
'unversioned' 'libdb-dev' 'amd64' '5.3.0' 'Depends: libdb5.3-dev
10 Conflicts: libdb5.1-dev'
11 insertpackage
'unversioned' 'libdb5.1-dev' 'amd64' '5.1.29-7'
12 insertpackage
'unversioned' 'libdb5.3-dev' 'amd64' '5.3.28-3' 'Conflicts: libdb5.1-dev'
14 insertpackage
'unversioned' 'foo' 'amd64' '1'
15 insertpackage
'unversioned' 'bar' 'amd64' '1'
16 insertpackage
'unversioned' 'foo' 'amd64' '2' 'Conflicts: bar'
17 insertpackage
'unversioned' 'bar' 'amd64' '2' 'Conflicts: foo'
18 insertpackage
'unversioned' 'baz' 'amd64' '2' 'Depends: bar | foo'
20 insertpackage
'versioned' 'libdb-dev' 'amd64' '5.3.0' 'Depends: libdb5.3-dev
21 Conflicts: libdb5.1-dev (<< 5.2)'
22 insertpackage
'versioned' 'libdb5.3-dev' 'amd64' '5.3.28-3' 'Conflicts: libdb5.1-dev (<< 5.2)'
24 insertpackage
'versioned' 'foo' 'amd64' '2' 'Conflicts: bar (<= 2)'
25 insertpackage
'versioned' 'bar' 'amd64' '2' 'Conflicts: foo (<= 2)'
26 insertpackage
'versioned' 'baz' 'amd64' '2' 'Depends: bar (>= 2) | foo (>= 2)'
28 insertpackage
'multipleno' 'foo' 'amd64' '2.1' 'Conflicts: bar (<= 3)'
29 insertpackage
'multipleno' 'bar' 'amd64' '2.1' 'Conflicts: foo (<= 3), foo (<= 1)'
31 insertpackage
'multipleyes' 'foo' 'amd64' '2.2' 'Conflicts: bar (<= 3)'
32 # having foo multiple times as conflict is a non-advisable hack in general
33 insertpackage
'multipleyes' 'bar' 'amd64' '2.2' 'Conflicts: foo (<= 3), foo (<= 3)'
35 #774924 - slightly simplified
36 insertpackage
'jessie' 'login' 'amd64' '2' 'Pre-Depends: libaudit1 (>= 0)'
37 insertpackage
'jessie' 'libaudit1' 'amd64' '2' 'Depends: libaudit-common (>= 0)'
38 insertpackage
'jessie' 'libaudit-common' 'amd64' '2' 'Breaks: libaudit0, libaudit1 (<< 2)'
40 cp rootdir
/var
/lib
/dpkg
/status rootdir
/var
/lib
/dpkg
/status-backup
43 insertinstalledpackage
'libdb-dev' 'amd64' '5.1.7' 'Depends: libdb5.1-dev'
44 insertinstalledpackage
'libdb5.1-dev' 'amd64' '5.1.29-7'
45 testequal
'Reading package lists...
46 Building dependency tree...
47 The following packages will be REMOVED:
49 The following NEW packages will be installed:
51 The following packages will be upgraded:
53 1 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
54 Remv libdb5.1-dev [5.1.29-7] [libdb-dev:amd64 ]
55 Inst libdb-dev [5.1.7] (5.3.0 unversioned [amd64]) []
56 Inst libdb5.3-dev (5.3.28-3 unversioned [amd64])
57 Conf libdb5.3-dev (5.3.28-3 unversioned [amd64])
58 Conf libdb-dev (5.3.0 unversioned [amd64])' aptget dist-upgrade
-st unversioned
59 testequal
'Reading package lists...
60 Building dependency tree...
61 The following packages will be REMOVED:
63 The following NEW packages will be installed:
65 The following packages will be upgraded:
67 1 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
68 Remv libdb5.1-dev [5.1.29-7] [libdb-dev:amd64 ]
69 Inst libdb-dev [5.1.7] (5.3.0 versioned [amd64]) []
70 Inst libdb5.3-dev (5.3.28-3 versioned [amd64])
71 Conf libdb5.3-dev (5.3.28-3 versioned [amd64])
72 Conf libdb-dev (5.3.0 versioned [amd64])' aptget dist-upgrade
-st versioned
74 cp -f rootdir
/var
/lib
/dpkg
/status-backup rootdir
/var
/lib
/dpkg
/status
75 insertinstalledpackage
'foo' 'amd64' '1'
76 insertinstalledpackage
'bar' 'amd64' '1'
77 testequal
'Reading package lists...
78 Building dependency tree...
79 The following packages have been kept back:
81 0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.' aptget dist-upgrade
-st unversioned
82 testequal
'Reading package lists...
83 Building dependency tree...
84 The following packages have been kept back:
86 0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.' aptget dist-upgrade
-st versioned
87 testequal
'Reading package lists...
88 Building dependency tree...
89 The following packages have been kept back:
91 0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.' aptget dist-upgrade
-st multipleno
92 testequal
'Reading package lists...
93 Building dependency tree...
94 The following packages will be REMOVED:
96 The following packages will be upgraded:
98 1 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
100 Inst bar [1] (2.2 multipleyes [amd64])
101 Conf bar (2.2 multipleyes [amd64])' aptget dist-upgrade
-st multipleyes
103 testequal
'Reading package lists...
104 Building dependency tree...
105 The following NEW packages will be installed:
107 0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
108 Inst baz (2 unversioned [amd64])
109 Conf baz (2 unversioned [amd64])' aptget
install baz
-st unversioned
110 testequal
'Reading package lists...
111 Building dependency tree...
112 The following extra packages will be installed:
114 The following packages will be REMOVED:
116 The following NEW packages will be installed:
118 The following packages will be upgraded:
120 1 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
122 Inst foo [1] (2 versioned [amd64])
123 Inst baz (2 versioned [amd64])
124 Conf foo (2 versioned [amd64])
125 Conf baz (2 versioned [amd64])' aptget
install baz
-st versioned
127 testequal
'Reading package lists...
128 Building dependency tree...
129 The following NEW packages will be installed:
131 0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
132 Inst baz (2 unversioned [amd64])
133 Conf baz (2 unversioned [amd64])' aptget
install baz
-st unversioned
134 testequal
'Reading package lists...
135 Building dependency tree...
136 The following extra packages will be installed:
138 The following packages will be REMOVED:
140 The following NEW packages will be installed:
142 The following packages will be upgraded:
144 1 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
146 Inst foo [1] (2 versioned [amd64])
147 Inst baz (2 versioned [amd64])
148 Conf foo (2 versioned [amd64])
149 Conf baz (2 versioned [amd64])' aptget
install baz
-st versioned
151 # recreating the exact situation is hard, so we pull tricks to get the score
152 cp -f rootdir
/var
/lib
/dpkg
/status-backup rootdir
/var
/lib
/dpkg
/status
153 insertinstalledpackage
'gdm3' 'amd64' '1' 'Depends: libaudit0, libaudit0'
154 insertinstalledpackage
'login' 'amd64' '1' 'Essential: yes'
155 insertinstalledpackage
'libaudit0' 'amd64' '1'
156 testequal
'Reading package lists...
157 Building dependency tree...
158 The following packages will be REMOVED:
160 The following NEW packages will be installed:
161 libaudit-common libaudit1
162 The following packages will be upgraded:
164 1 upgraded, 2 newly installed, 2 to remove and 0 not upgraded.
167 Inst libaudit-common (2 jessie [amd64])
168 Conf libaudit-common (2 jessie [amd64])
169 Inst libaudit1 (2 jessie [amd64])
170 Conf libaudit1 (2 jessie [amd64])
171 Inst login [1] (2 jessie [amd64])
172 Conf login (2 jessie [amd64])' aptget dist-upgrade
-st jessie