summaryrefslogtreecommitdiff
path: root/test/integration
diff options
context:
space:
mode:
authorColin Watson <cjwatson@ubuntu.com>2013-08-01 13:19:43 +0200
committerDavid Kalnischkies <kalnischkies@gmail.com>2013-08-01 13:37:52 +0200
commit096bd9f59750f6bea754d3a05e240c9eea0f6b53 (patch)
treedf89bbb78f0484983fd0d0020a6e551a64d1a3c8 /test/integration
parent55732492ddea83e7d97b2e0c3e6799948fc5f152 (diff)
prefer native arch over higher priority for providers
The rational from the buglog: > The problem here is that the Priority field in one of the Packages files > is incorrect due to a mishap with reprepro configuration, […] the > amd64 version is Priority: standard but the arm64 version is Priority: > optional (and has a stray "optional: interpreters" field). > […] > However, Priority is a rather weak property of a package because it's > typically applied via overrides, and it's easy for maintainers of > third-party repositories to misconfigure them so that overrides aren't > applied correctly. It shouldn't be ranked ahead of choosing packages > from the native architecture. In this case, I have no user-mode > emulation for arm64 set up, so choosing m4:arm64 simply won't work. This effectly makes the priority the least interesting data point in chosing a provider, which is in line with the other checks we have already order above priority in the past and also has a certain appeal by the soft irony it provides. Closes: #718482
Diffstat (limited to 'test/integration')
-rwxr-xr-xtest/integration/test-prefer-native-architecture-over-higher-priority25
1 files changed, 25 insertions, 0 deletions
diff --git a/test/integration/test-prefer-native-architecture-over-higher-priority b/test/integration/test-prefer-native-architecture-over-higher-priority
new file mode 100755
index 000000000..2e5696376
--- /dev/null
+++ b/test/integration/test-prefer-native-architecture-over-higher-priority
@@ -0,0 +1,25 @@
+#!/bin/sh
+set -e
+
+TESTDIR=$(readlink -f $(dirname $0))
+. $TESTDIR/framework
+setupenvironment
+configarchitecture 'amd64' 'arm64'
+
+insertpackage 'unstable' 'm4' 'amd64' '1' 'Multi-Arch: foreign' 'optional'
+insertpackage 'unstable' 'm4' 'arm64' '1' 'Multi-Arch: foreign' 'standard'
+insertpackage 'unstable' 'autoconf' 'all' '1' 'Depends: m4'
+
+setupaptarchive
+
+testequal 'Reading package lists...
+Building dependency tree...
+The following extra packages will be installed:
+ m4
+The following NEW packages will be installed:
+ autoconf m4
+0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
+Inst m4 (1 unstable [amd64])
+Inst autoconf (1 unstable [all])
+Conf m4 (1 unstable [amd64])
+Conf autoconf (1 unstable [all])' aptget install autoconf -s