]>
Commit | Line | Data |
---|---|---|
40faab46 DK |
1 | #!/bin/sh |
2 | set -e | |
3 | ||
4 | # dpkg implements versioned provides in commit 5bb02fe80e9f40dcad9703a72f67cf615ff217b5 | |
5 | # but previous versions seem to allow parsing, working and ignoring it. | |
6 | ||
7 | TESTDIR=$(readlink -f $(dirname $0)) | |
8 | . $TESTDIR/framework | |
9 | setupenvironment | |
10 | configarchitecture 'amd64' 'i386' | |
11 | ||
12 | insertinstalledpackage 'webapp' 'all' '1' 'Depends: httpd' | |
13 | insertinstalledpackage 'webserver' 'all' '1' 'Provides: httpd' | |
14 | ||
15 | insertpackage 'unstable' 'webapp' 'all' '2' 'Depends: httpd (>= 2)' | |
16 | insertpackage 'unstable' 'webserver' 'amd64' '2' 'Provides: httpd (= 2)' | |
17 | insertpackage 'unstable' 'foreign-webserver' 'i386' '2' 'Multi-Arch: foreign | |
18 | Provides: httpd (= 2)' | |
19 | ||
20 | insertpackage 'experimental' 'webapp' 'all' '3' 'Depends: httpd (>= 1.5)' | |
21 | insertpackage 'experimental' 'webserver' 'amd64' '3' 'Provides: httpd (= 3)' | |
22 | ||
23 | insertpackage 'experimental' 'foreign-webserver' 'i386' '4' 'Multi-Arch: foreign | |
24 | Provides: httpd (= 4)' | |
25 | insertpackage 'experimental' 'cool-webapp' 'all' '4' 'Depends: httpd (>= 4)' | |
26 | ||
27 | setupaptarchive | |
28 | ||
29 | testequal 'Reading package lists... | |
30 | Building dependency tree... | |
31 | The following packages will be upgraded: | |
32 | webapp webserver | |
33 | 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. | |
34 | Inst webserver [1] (2 unstable [amd64]) | |
35 | Inst webapp [1] (2 unstable [all]) | |
36 | Conf webserver (2 unstable [amd64]) | |
37 | Conf webapp (2 unstable [all])' aptget dist-upgrade -s | |
38 | ||
39 | testequal 'Reading package lists... | |
40 | Building dependency tree... | |
41 | The following packages will be upgraded: | |
42 | webapp webserver | |
43 | 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. | |
44 | Inst webserver [1] (2 unstable [amd64]) | |
45 | Inst webapp [1] (2 unstable [all]) | |
46 | Conf webserver (2 unstable [amd64]) | |
47 | Conf webapp (2 unstable [all])' aptget install webapp webserver -s | |
48 | ||
49 | testequal 'Reading package lists... | |
50 | Building dependency tree... | |
51 | The following packages will be upgraded: | |
52 | webapp webserver | |
53 | 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. | |
54 | Inst webserver [1] (2 unstable [amd64]) | |
55 | Inst webapp [1] (3 experimental [all]) | |
56 | Conf webserver (2 unstable [amd64]) | |
57 | Conf webapp (3 experimental [all])' aptget install webapp=3 webserver -s | |
58 | ||
59 | testequal 'Reading package lists... | |
60 | Building dependency tree... | |
61 | The following packages will be upgraded: | |
62 | webapp webserver | |
63 | 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. | |
64 | Inst webserver [1] (3 experimental [amd64]) | |
65 | Inst webapp [1] (2 unstable [all]) | |
66 | Conf webserver (3 experimental [amd64]) | |
67 | Conf webapp (2 unstable [all])' aptget install webapp webserver=3 -s | |
68 | ||
69 | testequal 'Reading package lists... | |
70 | Building dependency tree... | |
71 | The following NEW packages will be installed: | |
72 | foreign-webserver:i386 | |
73 | The following packages will be upgraded: | |
74 | webapp | |
75 | 1 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. | |
76 | Inst foreign-webserver:i386 (2 unstable [i386]) | |
77 | Inst webapp [1] (2 unstable [all]) | |
78 | Conf foreign-webserver:i386 (2 unstable [i386]) | |
79 | Conf webapp (2 unstable [all])' aptget install webapp foreign-webserver:i386 -s | |
80 | ||
81 | testequal 'Reading package lists... | |
82 | Building dependency tree... | |
83 | The following NEW packages will be installed: | |
84 | foreign-webserver:i386 | |
85 | The following packages will be upgraded: | |
86 | webapp | |
87 | 1 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. | |
88 | Inst foreign-webserver:i386 (2 unstable [i386]) | |
89 | Inst webapp [1] (3 experimental [all]) | |
90 | Conf foreign-webserver:i386 (2 unstable [i386]) | |
91 | Conf webapp (3 experimental [all])' aptget install webapp=3 foreign-webserver:i386 -s | |
92 | ||
93 | testequal 'Reading package lists... | |
94 | Building dependency tree... | |
95 | The following NEW packages will be installed: | |
96 | foreign-webserver:i386 | |
97 | The following packages will be upgraded: | |
98 | webapp | |
99 | 1 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. | |
100 | Inst foreign-webserver:i386 (4 experimental [i386]) | |
101 | Inst webapp [1] (2 unstable [all]) | |
102 | Conf foreign-webserver:i386 (4 experimental [i386]) | |
103 | Conf webapp (2 unstable [all])' aptget install webapp foreign-webserver:i386=4 -s | |
104 | ||
105 | testequal 'Reading package lists... | |
106 | Building dependency tree... | |
107 | Some packages could not be installed. This may mean that you have | |
108 | requested an impossible situation or if you are using the unstable | |
109 | distribution that some required packages have not yet been created | |
110 | or been moved out of Incoming. | |
111 | The following information may help to resolve the situation: | |
112 | ||
113 | The following packages have unmet dependencies: | |
114 | cool-webapp : Depends: httpd (>= 4) | |
115 | E: Unable to correct problems, you have held broken packages.' aptget install cool-webapp -s | |
116 | ||
117 | testequal 'Reading package lists... | |
118 | Building dependency tree... | |
119 | Some packages could not be installed. This may mean that you have | |
120 | requested an impossible situation or if you are using the unstable | |
121 | distribution that some required packages have not yet been created | |
122 | or been moved out of Incoming. | |
123 | The following information may help to resolve the situation: | |
124 | ||
125 | The following packages have unmet dependencies: | |
126 | cool-webapp : Depends: httpd (>= 4) | |
127 | E: Unable to correct problems, you have held broken packages.' aptget install cool-webapp foreign-webserver:i386 -s | |
128 | ||
129 | testequal 'Reading package lists... | |
130 | Building dependency tree... | |
131 | The following NEW packages will be installed: | |
132 | cool-webapp foreign-webserver:i386 | |
133 | 0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. | |
134 | Inst foreign-webserver:i386 (4 experimental [i386]) | |
135 | Inst cool-webapp (4 experimental [all]) | |
136 | Conf foreign-webserver:i386 (4 experimental [i386]) | |
137 | Conf cool-webapp (4 experimental [all])' aptget install cool-webapp foreign-webserver:i386=4 -s |