summaryrefslogtreecommitdiff
path: root/test/integration/test-bug-747261-arch-specific-conflicts
diff options
context:
space:
mode:
authorMichael Vogt <mvo@debian.org>2014-05-14 18:04:48 +0200
committerMichael Vogt <mvo@debian.org>2014-05-14 18:04:48 +0200
commite110d7bf5675f484c06b82f621ac98bedc464865 (patch)
tree70ce5da7ad75ccbaf4b30cf4809209993ba98b23 /test/integration/test-bug-747261-arch-specific-conflicts
parent0b58b3f8917a49d83154fd3173bca36c1d617ef0 (diff)
parent4f6d26b4d41474aa390329b7e9cb167eb70b2821 (diff)
Merge remote-tracking branch 'donkult/debian/experimental' into debian/experimental
Conflicts: apt-pkg/acquire-item.cc apt-pkg/acquire-item.h
Diffstat (limited to 'test/integration/test-bug-747261-arch-specific-conflicts')
-rwxr-xr-xtest/integration/test-bug-747261-arch-specific-conflicts51
1 files changed, 51 insertions, 0 deletions
diff --git a/test/integration/test-bug-747261-arch-specific-conflicts b/test/integration/test-bug-747261-arch-specific-conflicts
new file mode 100755
index 000000000..be971b89e
--- /dev/null
+++ b/test/integration/test-bug-747261-arch-specific-conflicts
@@ -0,0 +1,51 @@
+#!/bin/sh
+set -e
+
+TESTDIR=$(readlink -f $(dirname $0))
+. $TESTDIR/framework
+setupenvironment
+configarchitecture 'amd64' 'sparc' 'armel'
+
+msgtest 'Check that dpkg supports' 'arch-specific dependencies'
+set +e
+# this fails always, the question is just how it fails
+dpkg-checkbuilddeps -d 'foobar:barfoo' /dev/null 2>/dev/null >/dev/null
+RETURNCODE=$?
+set -e
+if [ "$RETURNCODE" != '1' ]; then
+ dpkg-checkbuilddeps -d 'foobar:barfoo' /dev/null || true
+ echo "Command had returncode: $RETURNCODE"
+ msgskip
+ exit 0
+else
+ msgpass
+fi
+
+buildsimplenativepackage 'libc6' 'amd64,sparc,armel' '1' 'stable' 'Multi-Arch: same'
+buildsimplenativepackage 'libc6-i386' 'amd64' '1' 'stable' 'Conflicts: libc6:sparc'
+
+setupaptarchive
+
+testsuccess aptget install 'libc6:amd64' 'libc6:sparc' -y
+testdpkginstalled 'libc6:amd64' 'libc6:sparc'
+testdpkgnotinstalled 'libc6-i386' 'libc6:armel'
+
+testsuccess aptget install libc6-i386 -y
+testdpkginstalled 'libc6:amd64' 'libc6-i386'
+testdpkgnotinstalled 'libc6:sparc' 'libc6:armel'
+
+testsuccess aptget install libc6:armel -y
+testdpkginstalled 'libc6:amd64' 'libc6:armel' 'libc6-i386'
+testdpkgnotinstalled 'libc6:sparc'
+
+testsuccess aptget install libc6:sparc -y
+testdpkginstalled 'libc6:amd64' 'libc6:armel' 'libc6:sparc'
+testdpkgnotinstalled 'libc6-i386'
+
+testsuccess aptget purge 'libc6:*' 'libc6-i386' -y
+testdpkgnotinstalled 'libc6:amd64' 'libc6:armel' 'libc6:sparc' 'libc6-i386'
+
+# check that (the actually simpler) single arch is fine, too
+configarchitecture 'amd64'
+testfailure aptget install libc6:sparc -s
+testsuccess aptget install libc6 libc6-i386 -y