]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | set -e | |
3 | ||
4 | TESTDIR="$(readlink -f "$(dirname "$0")")" | |
5 | . "$TESTDIR/framework" | |
6 | ||
7 | setupenvironment | |
8 | configarchitecture 'i386' 'amd64' | |
9 | ||
10 | insertpackage 'unstable' 'lib32nss-mdns' 'amd64' '0.10-6' 'Depends: libnss-mdns-i386 (= 0.10-6)' | |
11 | insertpackage 'unstable' 'libnss-mdns' 'amd64,i386' '0.10-6' 'Multi-Arch: same | |
12 | Breaks: lib32nss-mdns (<< 0.10-6)' | |
13 | insertpackage 'unstable' 'libnss-mdns-i386' 'i386' '0.10-6' 'Multi-Arch: foreign | |
14 | Depends: libnss-mdns' | |
15 | # introduce some dummies so that there are versions, but none works | |
16 | insertpackage 'unstable' 'libnss-mdns-i386' 'amd64' '0.1-6' | |
17 | insertpackage 'experimental' 'libnss-mdns-amd64' 'i386,amd64' '0.10-6' 'Provides: libnss-mdns-i386' | |
18 | ||
19 | insertpackage 'unstable' 'foo' 'amd64' '1' 'Depends: libfoo' | |
20 | insertpackage 'unstable' 'libfoo' 'amd64' '1' 'Depends: libfoo-bin' | |
21 | insertpackage 'unstable' 'libfoo-bin' 'i386' '0.10-6' 'Multi-Arch: foreign' | |
22 | ||
23 | insertinstalledpackage 'lib32nss-mdns' 'amd64' '0.9-1' | |
24 | insertinstalledpackage 'libnss-mdns' 'amd64' '0.9-1' | |
25 | ||
26 | insertinstalledpackage 'i-make-packages-important' 'all' '1' 'Depends: libnss-mdns' | |
27 | ||
28 | setupaptarchive --no-update | |
29 | ||
30 | # make libnss-mdns-i386 unavailable | |
31 | configarchitecture 'amd64' | |
32 | testsuccess aptget update | |
33 | ||
34 | testsuccessequal 'Reading package lists... | |
35 | Building dependency tree... | |
36 | Calculating upgrade... | |
37 | The following packages will be REMOVED: | |
38 | lib32nss-mdns | |
39 | The following packages will be upgraded: | |
40 | libnss-mdns | |
41 | 1 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. | |
42 | Remv lib32nss-mdns [0.9-1] | |
43 | Inst libnss-mdns [0.9-1] (0.10-6 unstable [amd64]) | |
44 | Conf libnss-mdns (0.10-6 unstable [amd64])' aptget dist-upgrade -s | |
45 | ||
46 | testfailureequal 'Reading package lists... | |
47 | Building dependency tree... | |
48 | Some packages could not be installed. This may mean that you have | |
49 | requested an impossible situation or if you are using the unstable | |
50 | distribution that some required packages have not yet been created | |
51 | or been moved out of Incoming. | |
52 | The following information may help to resolve the situation: | |
53 | ||
54 | The following packages have unmet dependencies: | |
55 | foo : Depends: libfoo but it is not going to be installed | |
56 | E: Unable to correct problems, you have held broken packages.' aptget install foo -s | |
57 | ||
58 | # activate multiarch | |
59 | configarchitecture 'amd64' 'i386' | |
60 | testsuccess aptget update | |
61 | ||
62 | testsuccessequal 'Reading package lists... | |
63 | Building dependency tree... | |
64 | Calculating upgrade... | |
65 | The following NEW packages will be installed: | |
66 | libnss-mdns:i386 libnss-mdns-i386:i386 | |
67 | The following packages will be upgraded: | |
68 | lib32nss-mdns libnss-mdns | |
69 | 2 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. | |
70 | Inst lib32nss-mdns [0.9-1] (0.10-6 unstable [amd64]) [] | |
71 | Inst libnss-mdns [0.9-1] (0.10-6 unstable [amd64]) [] | |
72 | Inst libnss-mdns:i386 (0.10-6 unstable [i386]) [] | |
73 | Inst libnss-mdns-i386:i386 (0.10-6 unstable [i386]) | |
74 | Conf libnss-mdns:i386 (0.10-6 unstable [i386]) | |
75 | Conf libnss-mdns (0.10-6 unstable [amd64]) | |
76 | Conf libnss-mdns-i386:i386 (0.10-6 unstable [i386]) | |
77 | Conf lib32nss-mdns (0.10-6 unstable [amd64])' aptget dist-upgrade -s | |
78 | ||
79 | testsuccessequal 'Reading package lists... | |
80 | Building dependency tree... | |
81 | The following additional packages will be installed: | |
82 | libfoo libfoo-bin:i386 | |
83 | The following NEW packages will be installed: | |
84 | foo libfoo libfoo-bin:i386 | |
85 | 0 upgraded, 3 newly installed, 0 to remove and 2 not upgraded. | |
86 | Inst libfoo-bin:i386 (0.10-6 unstable [i386]) | |
87 | Inst libfoo (1 unstable [amd64]) | |
88 | Inst foo (1 unstable [amd64]) | |
89 | Conf libfoo-bin:i386 (0.10-6 unstable [i386]) | |
90 | Conf libfoo (1 unstable [amd64]) | |
91 | Conf foo (1 unstable [amd64])' aptget install foo -s |