]> git.saurik.com Git - apt.git/blob - test/integration/test-bug-470115-new-and-tighten-recommends
apt-inst: Do not try to create a substring of an empty string in error reporting
[apt.git] / test / integration / test-bug-470115-new-and-tighten-recommends
1 #!/bin/sh
2 set -e
3
4 TESTDIR=$(readlink -f $(dirname $0))
5 . $TESTDIR/framework
6 setupenvironment
7 configarchitecture 'i386'
8
9 insertinstalledpackage 'cool' 'all' '1'
10 insertinstalledpackage 'stuff' 'all' '1'
11 insertinstalledpackage 'coolstuff' 'all' '1'
12
13 insertpackage 'unstable' 'cool' 'all' '2'
14 insertpackage 'unstable' 'stuff' 'all' '2'
15 insertpackage 'unstable' 'coolstuff' 'all' '2'
16 insertpackage 'unstable' 'super' 'all' '2'
17
18 insertinstalledpackage 'tighten-cool' 'all' '1' 'Recommends: cool (>= 1)'
19 insertpackage 'unstable' 'tighten-cool' 'all' '2' 'Recommends: cool (>= 2)'
20
21 insertinstalledpackage 'tighten-coolorstuff' 'all' '1' 'Recommends: cool (>= 1) | stuff (>= 1)'
22 insertpackage 'unstable' 'tighten-coolorstuff' 'all' '2' 'Recommends: stuff (>= 2) | cool (>= 2)'
23
24 insertinstalledpackage 'tighten-coolorstuff2' 'all' '1' 'Recommends: cool (>= 1) | stuff (>= 1)'
25 insertpackage 'unstable' 'tighten-coolorstuff2' 'all' '2' 'Recommends: stuff2 (>= 2) | cool (>= 2)'
26
27 insertinstalledpackage 'newrec-cool' 'all' '1'
28 insertpackage 'unstable' 'newrec-cool' 'all' '2' 'Recommends: cool (>= 2)'
29
30 insertinstalledpackage 'newrec-super' 'all' '1'
31 insertpackage 'unstable' 'newrec-super' 'all' '2' 'Recommends: super'
32
33 insertinstalledpackage 'newrec-coolorstuff' 'all' '1'
34 insertpackage 'unstable' 'newrec-coolorstuff' 'all' '2' 'Recommends: cool (>= 2) | stuff (>= 2)'
35
36 insertinstalledpackage 'cool-gone' 'all' '1' 'Recommends: cool (>= 1) | stuff (>= 2)'
37 insertpackage 'unstable' 'cool-gone' 'all' '2' 'Recommends: stuff (>= 2)'
38
39 insertinstalledpackage 'super-overtake' 'all' '1' 'Recommends: cool | super, stuff | super'
40 insertpackage 'unstable' 'super-overtake' 'all' '2' 'Recommends: stuff (>= 3) | super, super | cool (>= 2)'
41
42 insertinstalledpackage 'upgrade-over-new' 'all' '1' 'Recommends: cool'
43 insertpackage 'unstable' 'upgrade-over-new' 'all' '2' 'Recommends: cool (>= 2) | super'
44
45 insertinstalledpackage 'now-satisfiable' 'all' '1' 'Recommends: cool (>= 3)'
46 insertpackage 'unstable' 'now-satisfiable' 'all' '2' 'Recommends: cool (>= 2)'
47
48 setupaptarchive
49
50 testequal 'Reading package lists...
51 Building dependency tree...
52 The following extra packages will be installed:
53 cool
54 The following packages will be upgraded:
55 cool tighten-cool
56 2 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
57 Inst cool [1] (2 unstable [all])
58 Inst tighten-cool [1] (2 unstable [all])
59 Conf cool (2 unstable [all])
60 Conf tighten-cool (2 unstable [all])' aptget install tighten-cool -s
61
62 testequal 'Reading package lists...
63 Building dependency tree...
64 The following extra packages will be installed:
65 stuff
66 The following packages will be upgraded:
67 stuff tighten-coolorstuff
68 2 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
69 Inst stuff [1] (2 unstable [all])
70 Inst tighten-coolorstuff [1] (2 unstable [all])
71 Conf stuff (2 unstable [all])
72 Conf tighten-coolorstuff (2 unstable [all])' aptget install tighten-coolorstuff -s
73
74 testequal 'Reading package lists...
75 Building dependency tree...
76 The following extra packages will be installed:
77 cool
78 The following packages will be upgraded:
79 cool tighten-coolorstuff2
80 2 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
81 Inst cool [1] (2 unstable [all])
82 Inst tighten-coolorstuff2 [1] (2 unstable [all])
83 Conf cool (2 unstable [all])
84 Conf tighten-coolorstuff2 (2 unstable [all])' aptget install tighten-coolorstuff2 -s
85
86 testequal 'Reading package lists...
87 Building dependency tree...
88 The following extra packages will be installed:
89 cool
90 The following packages will be upgraded:
91 cool newrec-cool
92 2 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
93 Inst cool [1] (2 unstable [all])
94 Inst newrec-cool [1] (2 unstable [all])
95 Conf cool (2 unstable [all])
96 Conf newrec-cool (2 unstable [all])' aptget install newrec-cool -s
97
98 testequal 'Reading package lists...
99 Building dependency tree...
100 The following extra packages will be installed:
101 super
102 The following NEW packages will be installed:
103 super
104 The following packages will be upgraded:
105 newrec-super
106 1 upgraded, 1 newly installed, 0 to remove and 12 not upgraded.
107 Inst newrec-super [1] (2 unstable [all])
108 Inst super (2 unstable [all])
109 Conf newrec-super (2 unstable [all])
110 Conf super (2 unstable [all])' aptget install newrec-super -s
111
112 testequal 'Reading package lists...
113 Building dependency tree...
114 The following extra packages will be installed:
115 cool
116 The following packages will be upgraded:
117 cool newrec-coolorstuff
118 2 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
119 Inst cool [1] (2 unstable [all])
120 Inst newrec-coolorstuff [1] (2 unstable [all])
121 Conf cool (2 unstable [all])
122 Conf newrec-coolorstuff (2 unstable [all])' aptget install newrec-coolorstuff -s
123
124 testequal 'Reading package lists...
125 Building dependency tree...
126 The following extra packages will be installed:
127 stuff
128 The following packages will be upgraded:
129 cool-gone stuff
130 2 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
131 Inst cool-gone [1] (2 unstable [all])
132 Inst stuff [1] (2 unstable [all])
133 Conf cool-gone (2 unstable [all])
134 Conf stuff (2 unstable [all])' aptget install cool-gone -s
135
136 testequal 'Reading package lists...
137 Building dependency tree...
138 The following extra packages will be installed:
139 super
140 The following NEW packages will be installed:
141 super
142 The following packages will be upgraded:
143 super-overtake
144 1 upgraded, 1 newly installed, 0 to remove and 12 not upgraded.
145 Inst super (2 unstable [all])
146 Inst super-overtake [1] (2 unstable [all])
147 Conf super (2 unstable [all])
148 Conf super-overtake (2 unstable [all])' aptget install super-overtake -s
149
150 # if super would be in front, we would get a new here as it is new and
151 # the first option in an or-group should be the preferred oneā€¦
152 testequal 'Reading package lists...
153 Building dependency tree...
154 The following extra packages will be installed:
155 cool
156 The following packages will be upgraded:
157 cool upgrade-over-new
158 2 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
159 Inst cool [1] (2 unstable [all])
160 Inst upgrade-over-new [1] (2 unstable [all])
161 Conf cool (2 unstable [all])
162 Conf upgrade-over-new (2 unstable [all])' aptget install upgrade-over-new -s
163
164 # the recommends wasn't used before so while we could do it now,
165 # the user doesn't seem to need it so avoid upgrading it
166 testequal 'Reading package lists...
167 Building dependency tree...
168 The following packages will be upgraded:
169 now-satisfiable
170 1 upgraded, 0 newly installed, 0 to remove and 12 not upgraded.
171 Inst now-satisfiable [1] (2 unstable [all])
172 Conf now-satisfiable (2 unstable [all])' aptget install now-satisfiable -s