From 8aec002f1d3eb70423c760a68a9825a92bba7b2a Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 26 Mar 2011 01:31:32 +0100 Subject: * apt-pkg/aptconfiguration.cc: - use dpkg --print-foreign-architectures to get multiarch configuration if non is specified with APT::Architectures (Closes: #612958) --- .../test-bug-612958-use-dpkg-multiarch-config | 59 ++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100755 test/integration/test-bug-612958-use-dpkg-multiarch-config (limited to 'test/integration/test-bug-612958-use-dpkg-multiarch-config') diff --git a/test/integration/test-bug-612958-use-dpkg-multiarch-config b/test/integration/test-bug-612958-use-dpkg-multiarch-config new file mode 100755 index 000000000..4f31c3953 --- /dev/null +++ b/test/integration/test-bug-612958-use-dpkg-multiarch-config @@ -0,0 +1,59 @@ +#!/bin/sh +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework +setupenvironment +configarchitecture 'i386' +setupaptarchive + +insertinstalledpackage 'libapt' 'i386' '1.0' +insertinstalledpackage 'libapt' 'amd64' '1.0' +insertinstalledpackage 'libapt' 'armel' '1.0' + +testpass() { + rm rootdir/var/cache/apt/*.bin + msgtest 'Test architecture handling' "$1 with $2" + aptcache show libapt:$2 2> /dev/null > /dev/null && msgpass || msgfail +} + +testfail() { + rm rootdir/var/cache/apt/*.bin + msgtest 'Test architecture handling' "$1 with $2" + aptcache show libapt:$2 2> /dev/null > /dev/null && msgfail || msgpass +} + +testpass 'no config' 'i386' +testfail 'no config' 'amd64' +testfail 'no config' 'armel' + +CONFFILE=rootdir/etc/apt/apt.conf.d/99multiarch +echo '#clear APT::Architectures;' >> $CONFFILE +echo 'APT::Architectures:: "i386";' >> $CONFFILE +echo 'APT::Architectures:: "amd64";' >> $CONFFILE + +testpass 'apt config' 'i386' +testpass 'apt config' 'amd64' +testfail 'apt config' 'armel' + +echo 'APT::Architectures:: "armel";' >> $CONFFILE + +testpass 'apt config' 'armel' + +rm $CONFFILE + +echo '#clear APT::Architectures;' >> $CONFFILE +echo 'Dir::Bin::dpkg "./dpkg-printer";' >> $CONFFILE + +echo '#! /bin/sh +echo "amd64"' > ./dpkg-printer +chmod +x ./dpkg-printer + +testpass 'dpkg config' 'i386' +testpass 'dpkg config' 'amd64' +testfail 'dpkg config' 'armel' + +echo '#! /bin/sh +echo "amd64 armel"' > ./dpkg-printer + +testpass 'dpkg config' 'armel' -- cgit v1.2.3