prepare 1.0.4 upload
[ntk/apt.git] / test / integration / test-bug-735967-lib32-to-i386-unavailable
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 testequal 'Reading package lists...
35 Building dependency tree...
36 The following packages will be REMOVED:
37 lib32nss-mdns
38 The following packages will be upgraded:
39 libnss-mdns
40 1 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
41 Remv lib32nss-mdns [0.9-1]
42 Inst libnss-mdns [0.9-1] (0.10-6 unstable [amd64])
43 Conf libnss-mdns (0.10-6 unstable [amd64])' aptget dist-upgrade -s
44
45 testequal 'Reading package lists...
46 Building dependency tree...
47 Some packages could not be installed. This may mean that you have
48 requested an impossible situation or if you are using the unstable
49 distribution that some required packages have not yet been created
50 or been moved out of Incoming.
51 The following information may help to resolve the situation:
52
53 The following packages have unmet dependencies:
54 foo : Depends: libfoo but it is not going to be installed
55 E: Unable to correct problems, you have held broken packages.' aptget install foo -s
56
57 # activate multiarch
58 configarchitecture 'amd64' 'i386'
59 testsuccess aptget update
60
61 testequal 'Reading package lists...
62 Building dependency tree...
63 The following NEW packages will be installed:
64 libnss-mdns:i386 libnss-mdns-i386:i386
65 The following packages will be upgraded:
66 lib32nss-mdns libnss-mdns
67 2 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
68 Inst lib32nss-mdns [0.9-1] (0.10-6 unstable [amd64]) []
69 Inst libnss-mdns [0.9-1] (0.10-6 unstable [amd64]) []
70 Inst libnss-mdns:i386 (0.10-6 unstable [i386]) []
71 Inst libnss-mdns-i386:i386 (0.10-6 unstable [i386])
72 Conf libnss-mdns:i386 (0.10-6 unstable [i386])
73 Conf libnss-mdns (0.10-6 unstable [amd64])
74 Conf libnss-mdns-i386:i386 (0.10-6 unstable [i386])
75 Conf lib32nss-mdns (0.10-6 unstable [amd64])' aptget dist-upgrade -s
76
77 testequal 'Reading package lists...
78 Building dependency tree...
79 The following extra packages will be installed:
80 libfoo libfoo-bin:i386
81 The following NEW packages will be installed:
82 foo libfoo libfoo-bin:i386
83 0 upgraded, 3 newly installed, 0 to remove and 2 not upgraded.
84 Inst libfoo-bin:i386 (0.10-6 unstable [i386])
85 Inst libfoo (1 unstable [amd64])
86 Inst foo (1 unstable [amd64])
87 Conf libfoo-bin:i386 (0.10-6 unstable [i386])
88 Conf libfoo (1 unstable [amd64])
89 Conf foo (1 unstable [amd64])' aptget install foo -s