]> git.saurik.com Git - apt.git/blob - test/integration/test-bug-747261-arch-specific-conflicts
pass --force-remove-essential to dpkg only if needed
[apt.git] / test / integration / test-bug-747261-arch-specific-conflicts
1 #!/bin/sh
2 set -e
3
4 TESTDIR="$(readlink -f "$(dirname "$0")")"
5 . "$TESTDIR/framework"
6 setupenvironment
7 configarchitecture 'amd64' 'sparc' 'armel'
8
9 insertinstalledpackage 'foobar' 'armel' '1'
10 msgtest 'Check that dpkg supports' 'arch-specific dependencies'
11 if ! dpkgcheckbuilddeps -d 'foobar:armel' /dev/null 2>/dev/null >/dev/null; then
12 dpkgcheckbuilddeps -d 'foobar:armel' /dev/null || true
13 msgskip
14 exit 0
15 else
16 msgpass
17 fi
18
19 buildsimplenativepackage 'libc6' 'amd64,sparc,armel' '1' 'stable' 'Multi-Arch: same'
20 buildsimplenativepackage 'libc6-i386' 'amd64' '1' 'stable' 'Conflicts: libc6:sparc'
21
22 setupaptarchive
23
24 testsuccess aptget install 'libc6:amd64' 'libc6:sparc' -y
25 testdpkginstalled 'libc6:amd64' 'libc6:sparc'
26 testdpkgnotinstalled 'libc6-i386' 'libc6:armel'
27
28 testsuccess aptget install libc6-i386 -y
29 testdpkginstalled 'libc6:amd64' 'libc6-i386'
30 testdpkgnotinstalled 'libc6:sparc' 'libc6:armel'
31
32 testsuccess aptget install libc6:armel -y
33 testdpkginstalled 'libc6:amd64' 'libc6:armel' 'libc6-i386'
34 testdpkgnotinstalled 'libc6:sparc'
35
36 testsuccess aptget install libc6:sparc -y
37 testdpkginstalled 'libc6:amd64' 'libc6:armel' 'libc6:sparc'
38 testdpkgnotinstalled 'libc6-i386'
39
40 testsuccess aptget purge 'libc6:*' 'libc6-i386' -y
41 testdpkgnotinstalled 'libc6:amd64' 'libc6:armel' 'libc6:sparc' 'libc6-i386'
42
43 # check that (the actually simpler) single arch is fine, too
44 configarchitecture 'amd64'
45 testfailure aptget install libc6:sparc -s
46 testsuccess aptget install libc6 libc6-i386 -y