]> git.saurik.com Git - apt.git/blame_incremental - test/integration/test-prevent-markinstall-multiarch-same-versionscrew
refactor EDSP classes for better internal reuse
[apt.git] / test / integration / test-prevent-markinstall-multiarch-same-versionscrew
... / ...
CommitLineData
1#!/bin/sh
2set -e
3
4TESTDIR="$(readlink -f "$(dirname "$0")")"
5. "$TESTDIR/framework"
6setupenvironment
7configarchitecture 'amd64' 'i386' 'armel'
8
9insertpackage 'stable' 'allarchs' 'all' '1'
10insertpackage 'unstable' 'allarchs' 'all' '2'
11
12insertpackage 'stable,installed' 'fine' 'i386,amd64' '1' 'Multi-Arch: same'
13insertpackage 'unstable' 'fine' 'amd64,i386' '2' 'Multi-Arch: same'
14insertpackage 'experimental' 'fine' 'amd64,i386' '3' 'Multi-Arch: same'
15
16insertinstalledpackage 'fine-installed' 'i386,amd64' '1' 'Multi-Arch: same'
17insertpackage 'stable' 'fine-installed' 'i386,amd64,armel' '1' 'Multi-Arch: same'
18insertpackage 'unstable' 'fine-installed' 'i386,amd64' '2' 'Multi-Arch: same'
19insertpackage 'experimental' 'fine-installed' 'i386,amd64' '3' 'Multi-Arch: same'
20
21insertpackage 'stable,installed' 'out-of-sync-native' 'i386,amd64' '1' 'Multi-Arch: same'
22insertpackage 'unstable' 'out-of-sync-native' 'amd64' '2' 'Multi-Arch: same'
23
24insertpackage 'stable,installed' 'out-of-sync-foreign' 'i386,amd64' '1' 'Multi-Arch: same'
25insertpackage 'unstable' 'out-of-sync-foreign' 'i386' '2' 'Multi-Arch: same'
26
27insertinstalledpackage 'out-of-sync-gone-native' 'i386,amd64' '1' 'Multi-Arch: same'
28insertpackage 'stable' 'out-of-sync-gone-native' 'i386' '1' 'Multi-Arch: same'
29insertpackage 'unstable' 'out-of-sync-gone-native' 'i386' '2' 'Multi-Arch: same'
30
31insertinstalledpackage 'out-of-sync-gone-foreign' 'i386,amd64' '1' 'Multi-Arch: same'
32insertpackage 'stable' 'out-of-sync-gone-foreign' 'amd64' '1' 'Multi-Arch: same'
33insertpackage 'unstable' 'out-of-sync-gone-foreign' 'amd64' '2' 'Multi-Arch: same'
34
35insertpackage 'stable' 'libsame2' 'i386' '1' 'Multi-Arch: same'
36insertpackage 'unstable' 'libsame2' 'amd64' '2' 'Multi-Arch: same'
37insertpackage 'unstable' 'depender2' 'all' '2' 'Depends: libsame2 (= 2)'
38insertpackage 'stable' 'libsame3' 'i386' '1' 'Multi-Arch: same'
39insertpackage 'unstable' 'libsame3' 'i386,amd64' '3' 'Multi-Arch: same'
40insertpackage 'unstable' 'depender3' 'all' '3' 'Depends: libsame3 (= 3)'
41setupaptarchive
42
43testsuccessequal 'Reading package lists...
44Building dependency tree...
45Calculating upgrade...
46The following packages will be REMOVED:
47 out-of-sync-gone-foreign:i386 out-of-sync-gone-native
48The following packages have been kept back:
49 out-of-sync-foreign:i386 out-of-sync-native
50The following packages will be upgraded:
51 fine fine:i386 fine-installed fine-installed:i386 out-of-sync-gone-foreign
52 out-of-sync-gone-native:i386
536 upgraded, 0 newly installed, 2 to remove and 2 not upgraded.
54Remv out-of-sync-gone-foreign:i386 [1]
55Remv out-of-sync-gone-native [1]
56Inst fine [1] (2 unstable [amd64]) [fine:amd64 on fine:i386] [fine:i386 on fine:amd64] [fine:i386 ]
57Inst fine:i386 [1] (2 unstable [i386])
58Inst fine-installed [1] (2 unstable [amd64]) [fine-installed:amd64 on fine-installed:i386] [fine-installed:i386 on fine-installed:amd64] [fine-installed:i386 ]
59Inst fine-installed:i386 [1] (2 unstable [i386])
60Inst out-of-sync-gone-foreign [1] (2 unstable [amd64])
61Inst out-of-sync-gone-native:i386 [1] (2 unstable [i386])
62Conf fine:i386 (2 unstable [i386])
63Conf fine (2 unstable [amd64])
64Conf fine-installed:i386 (2 unstable [i386])
65Conf fine-installed (2 unstable [amd64])
66Conf out-of-sync-gone-foreign (2 unstable [amd64])
67Conf out-of-sync-gone-native:i386 (2 unstable [i386])' aptget dist-upgrade -s #-o Debug::pkgDepCache::Marker=1
68
69echo 'Package: fine:* fine-installed:*
70Pin: release a=experimental
71Pin-Priority: 500' > rootdir/etc/apt/preferences.d/experimental.pref
72
73testsuccessequal 'Reading package lists...
74Building dependency tree...
75Calculating upgrade...
76The following packages will be REMOVED:
77 out-of-sync-gone-foreign:i386 out-of-sync-gone-native
78The following packages have been kept back:
79 out-of-sync-foreign:i386 out-of-sync-native
80The following packages will be upgraded:
81 fine fine:i386 fine-installed fine-installed:i386 out-of-sync-gone-foreign
82 out-of-sync-gone-native:i386
836 upgraded, 0 newly installed, 2 to remove and 2 not upgraded.
84Remv out-of-sync-gone-foreign:i386 [1]
85Remv out-of-sync-gone-native [1]
86Inst fine [1] (3 experimental [amd64]) [fine:amd64 on fine:i386] [fine:i386 on fine:amd64] [fine:i386 ]
87Inst fine:i386 [1] (3 experimental [i386])
88Inst fine-installed [1] (3 experimental [amd64]) [fine-installed:amd64 on fine-installed:i386] [fine-installed:i386 on fine-installed:amd64] [fine-installed:i386 ]
89Inst fine-installed:i386 [1] (3 experimental [i386])
90Inst out-of-sync-gone-foreign [1] (2 unstable [amd64])
91Inst out-of-sync-gone-native:i386 [1] (2 unstable [i386])
92Conf fine:i386 (3 experimental [i386])
93Conf fine (3 experimental [amd64])
94Conf fine-installed:i386 (3 experimental [i386])
95Conf fine-installed (3 experimental [amd64])
96Conf out-of-sync-gone-foreign (2 unstable [amd64])
97Conf out-of-sync-gone-native:i386 (2 unstable [i386])' aptget dist-upgrade -s #-o Debug::pkgDepCache::Marker=1
98
99rm rootdir/var/lib/dpkg/status
100insertinstalledpackage 'libsame2' 'i386' '1' 'Multi-Arch: same'
101insertinstalledpackage 'libsame3' 'i386' '1' 'Multi-Arch: same'
102
103# the error message isn't great, but better than nothing, right?
104testfailureequal 'Reading package lists...
105Building dependency tree...
106Some packages could not be installed. This may mean that you have
107requested an impossible situation or if you are using the unstable
108distribution that some required packages have not yet been created
109or been moved out of Incoming.
110The following information may help to resolve the situation:
111
112The following packages have unmet dependencies:
113 depender2 : Depends: libsame2 (= 2) but it is not going to be installed
114E: Unable to correct problems, you have held broken packages.' aptget install depender2 -s
115
116testsuccessequal 'Reading package lists...
117Building dependency tree...
118The following additional packages will be installed:
119 libsame3:i386 libsame3
120The following NEW packages will be installed:
121 depender3 libsame3
122The following packages will be upgraded:
123 libsame3:i386
1241 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
125Inst libsame3:i386 [1] (3 unstable [i386])
126Inst libsame3 (3 unstable [amd64])
127Inst depender3 (3 unstable [all])
128Conf libsame3:i386 (3 unstable [i386])
129Conf libsame3 (3 unstable [amd64])
130Conf depender3 (3 unstable [all])' aptget install depender3 -s