128 KiB DSC files ought to be enough for everyone
[ntk/apt.git] / test / integration / test-allow-scores-for-all-dependency-types
CommitLineData
8daf68e3
DK
1#!/bin/sh
2set -e
3
4TESTDIR=$(readlink -f $(dirname $0))
5. $TESTDIR/framework
6setupenvironment
7configarchitecture 'amd64'
8
9ec748ff 9insertpackage 'unversioned' 'libdb-dev' 'amd64' '5.3.0' 'Depends: libdb5.3-dev
8daf68e3 10Conflicts: libdb5.1-dev'
9ec748ff
DK
11insertpackage 'unversioned' 'libdb5.1-dev' 'amd64' '5.1.29-7'
12insertpackage 'unversioned' 'libdb5.3-dev' 'amd64' '5.3.28-3' 'Conflicts: libdb5.1-dev'
13
14insertpackage 'unversioned' 'foo' 'amd64' '1'
15insertpackage 'unversioned' 'bar' 'amd64' '1'
16insertpackage 'unversioned' 'foo' 'amd64' '2' 'Conflicts: bar'
17insertpackage 'unversioned' 'bar' 'amd64' '2' 'Conflicts: foo'
18insertpackage 'unversioned' 'baz' 'amd64' '2' 'Depends: bar | foo'
19
20insertpackage 'versioned' 'libdb-dev' 'amd64' '5.3.0' 'Depends: libdb5.3-dev
21Conflicts: libdb5.1-dev (<< 5.2)'
22insertpackage 'versioned' 'libdb5.3-dev' 'amd64' '5.3.28-3' 'Conflicts: libdb5.1-dev (<< 5.2)'
23
24insertpackage 'versioned' 'foo' 'amd64' '2' 'Conflicts: bar (<= 2)'
25insertpackage 'versioned' 'bar' 'amd64' '2' 'Conflicts: foo (<= 2)'
26insertpackage 'versioned' 'baz' 'amd64' '2' 'Depends: bar (>= 2) | foo (>= 2)'
27
28insertpackage 'multipleno' 'foo' 'amd64' '2.1' 'Conflicts: bar (<= 3)'
29insertpackage 'multipleno' 'bar' 'amd64' '2.1' 'Conflicts: foo (<= 3), foo (<= 1)'
8daf68e3 30
9ec748ff
DK
31insertpackage 'multipleyes' 'foo' 'amd64' '2.2' 'Conflicts: bar (<= 3)'
32# having foo multiple times as conflict is a non-advisable hack in general
33insertpackage 'multipleyes' 'bar' 'amd64' '2.2' 'Conflicts: foo (<= 3), foo (<= 3)'
8daf68e3 34
9ec748ff 35cp rootdir/var/lib/dpkg/status rootdir/var/lib/dpkg/status-backup
8daf68e3
DK
36setupaptarchive
37
9ec748ff
DK
38insertinstalledpackage 'libdb-dev' 'amd64' '5.1.7' 'Depends: libdb5.1-dev'
39insertinstalledpackage 'libdb5.1-dev' 'amd64' '5.1.29-7'
40testequal 'Reading package lists...
41Building dependency tree...
42The following packages will be REMOVED:
43 libdb5.1-dev
44The following NEW packages will be installed:
45 libdb5.3-dev
46The following packages will be upgraded:
47 libdb-dev
481 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
49Remv libdb5.1-dev [5.1.29-7] [libdb-dev:amd64 ]
50Inst libdb-dev [5.1.7] (5.3.0 unversioned [amd64]) []
51Inst libdb5.3-dev (5.3.28-3 unversioned [amd64])
52Conf libdb5.3-dev (5.3.28-3 unversioned [amd64])
53Conf libdb-dev (5.3.0 unversioned [amd64])' aptget dist-upgrade -st unversioned
8daf68e3
DK
54testequal 'Reading package lists...
55Building dependency tree...
56The following packages will be REMOVED:
57 libdb5.1-dev
58The following NEW packages will be installed:
59 libdb5.3-dev
60The following packages will be upgraded:
61 libdb-dev
621 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
63Remv libdb5.1-dev [5.1.29-7] [libdb-dev:amd64 ]
9ec748ff
DK
64Inst libdb-dev [5.1.7] (5.3.0 versioned [amd64]) []
65Inst libdb5.3-dev (5.3.28-3 versioned [amd64])
66Conf libdb5.3-dev (5.3.28-3 versioned [amd64])
67Conf libdb-dev (5.3.0 versioned [amd64])' aptget dist-upgrade -st versioned
8daf68e3 68
9ec748ff 69cp -f rootdir/var/lib/dpkg/status-backup rootdir/var/lib/dpkg/status
8daf68e3
DK
70insertinstalledpackage 'foo' 'amd64' '1'
71insertinstalledpackage 'bar' 'amd64' '1'
8daf68e3
DK
72testequal 'Reading package lists...
73Building dependency tree...
74The following packages have been kept back:
75 bar foo
9ec748ff
DK
760 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.' aptget dist-upgrade -st unversioned
77testequal 'Reading package lists...
78Building dependency tree...
79The following packages have been kept back:
80 bar foo
810 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.' aptget dist-upgrade -st versioned
82testequal 'Reading package lists...
83Building dependency tree...
84The following packages have been kept back:
85 bar foo
860 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.' aptget dist-upgrade -st multipleno
87testequal 'Reading package lists...
88Building dependency tree...
89The following packages will be REMOVED:
90 foo
91The following packages will be upgraded:
92 bar
931 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
94Remv foo [1]
95Inst bar [1] (2.2 multipleyes [amd64])
96Conf bar (2.2 multipleyes [amd64])' aptget dist-upgrade -st multipleyes
97
98testequal 'Reading package lists...
99Building dependency tree...
100The following NEW packages will be installed:
101 baz
1020 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
103Inst baz (2 unversioned [amd64])
104Conf baz (2 unversioned [amd64])' aptget install baz -st unversioned
105testequal 'Reading package lists...
106Building dependency tree...
107The following extra packages will be installed:
108 foo
109The following packages will be REMOVED:
110 bar
111The following NEW packages will be installed:
112 baz
113The following packages will be upgraded:
114 foo
1151 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
116Remv bar [1]
117Inst foo [1] (2 versioned [amd64])
118Inst baz (2 versioned [amd64])
119Conf foo (2 versioned [amd64])
120Conf baz (2 versioned [amd64])' aptget install baz -st versioned
121
122testequal 'Reading package lists...
123Building dependency tree...
124The following NEW packages will be installed:
125 baz
1260 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
127Inst baz (2 unversioned [amd64])
128Conf baz (2 unversioned [amd64])' aptget install baz -st unversioned
129testequal 'Reading package lists...
130Building dependency tree...
131The following extra packages will be installed:
132 foo
133The following packages will be REMOVED:
134 bar
135The following NEW packages will be installed:
136 baz
137The following packages will be upgraded:
138 foo
1391 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
140Remv bar [1]
141Inst foo [1] (2 versioned [amd64])
142Inst baz (2 versioned [amd64])
143Conf foo (2 versioned [amd64])
144Conf baz (2 versioned [amd64])' aptget install baz -st versioned