X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/b53c9cea2902572822bbbece5bac236c1bbf846e..61db48241f2d46697a291bfedaf398a1ca9a70e3:/test/integration/test-multiarch-allowed diff --git a/test/integration/test-multiarch-allowed b/test/integration/test-multiarch-allowed index 2eb479c17..98555bc73 100755 --- a/test/integration/test-multiarch-allowed +++ b/test/integration/test-multiarch-allowed @@ -1,8 +1,8 @@ #!/bin/sh set -e -TESTDIR=$(readlink -f $(dirname $0)) -. $TESTDIR/framework +TESTDIR="$(readlink -f "$(dirname "$0")")" +. "$TESTDIR/framework" setupenvironment configarchitecture 'amd64' 'i386' @@ -12,7 +12,7 @@ insertpackage 'unstable' 'needsfooany' 'amd64,i386' '1' 'Depends: foo:any' insertpackage 'unstable' 'needsfoover1' 'amd64,i386' '1' 'Depends: foo:any (>= 1)' insertpackage 'unstable' 'needsfoover2' 'amd64,i386' '1' 'Depends: foo:any (>= 2)' insertpackage 'unstable' 'hatesfoo' 'amd64' '1' 'Conflicts: foo' -insertpackage 'unstable' 'hatesfooany' 'amd64' '1' 'Conflicts: foo:any' # this makes no sense… +insertpackage 'unstable' 'hatesfooany' 'amd64' '1' 'Conflicts: foo:any' # this makes no sense…? insertpackage 'unstable' 'hatesfoonative' 'amd64' '1' 'Conflicts: foo:amd64' insertpackage 'unstable' 'coolfoo' 'amd64' '1' 'Multi-Arch:allowed @@ -21,10 +21,10 @@ insertpackage 'unstable' 'coolfoover' 'amd64' '1' 'Multi-Arch:allowed Provides: coolbar (= 2)' insertpackage 'unstable' 'needscoolfoo' 'amd64' '1' 'Depends: coolfoo, coolbar' insertpackage 'unstable' 'needscoolfooany' 'amd64' '1' 'Depends: coolfoo:any, coolbar:any' -insertpackage 'unstable' 'needscoolfoover0' 'amd64' '1' 'Depends: coolfoo:any (>= 1), coolbar' -insertpackage 'unstable' 'needscoolfoover1' 'amd64' '1' 'Depends: coolfoo:any (>= 1), coolbar (>= 1)' -insertpackage 'unstable' 'needscoolfoover2' 'amd64' '1' 'Depends: coolfoo:any (>= 2), coolbar (>= 1)' -insertpackage 'unstable' 'needscoolfoover3' 'amd64' '1' 'Depends: coolfoo:any (>= 2), coolbar (>= 3)' +insertpackage 'unstable' 'needscoolfoover0' 'amd64' '1' 'Depends: coolfoo:any (>= 1), coolbar:any' +insertpackage 'unstable' 'needscoolfoover1' 'amd64' '1' 'Depends: coolfoo:any (>= 1), coolbar:any (>= 1)' +insertpackage 'unstable' 'needscoolfoover2' 'amd64' '1' 'Depends: coolfoo:any (>= 2), coolbar:any (>= 1)' +insertpackage 'unstable' 'needscoolfoover3' 'amd64' '1' 'Depends: coolfoo:any (>= 2), coolbar:any (>= 3)' setupaptarchive @@ -126,7 +126,7 @@ The following packages have unmet dependencies: E: Unable to correct problems, you have held broken packages." NEEDSFOO2FOREIGN="$BADPREFIX The following packages have unmet dependencies: - needsfoover2:i386 : Depends: foo:any:i386 (>= 2) + needsfoover2:i386 : Depends: foo:any (>= 2) E: Unable to correct problems, you have held broken packages." testfailureequal "$NEEDSFOO2NATIVE" aptget install needsfoover2 -s testfailureequal "$NEEDSFOO2FOREIGN" aptget install needsfoover2:i386 -s @@ -142,7 +142,7 @@ E: Unable to correct problems, you have held broken packages." aptget install fo testfailuremsg 'E: Unable to correct problems, you have held broken packages.' aptget install foo hatesfooany -s testfailureequal "$BADPREFIX The following packages have unmet dependencies: - hatesfoonative : Conflicts: foo but 1 is to be installed + hatesfoonative : Conflicts: foo:amd64 E: Unable to correct problems, you have held broken packages." aptget install foo hatesfoonative -s } solveableinsinglearch2 @@ -153,7 +153,6 @@ E: Unable to correct problems, you have held broken packages." aptget install fo testfailureequal "$BADPREFIX The following packages have unmet dependencies: hatesfooany : Conflicts: foo:any - Conflicts: foo:any:i386 E: Unable to correct problems, you have held broken packages." aptget install foo:i386 hatesfooany -s testsuccessequal 'Reading package lists... Building dependency tree... @@ -190,10 +189,17 @@ Inst needscoolfoo (1 unstable [amd64]) Conf coolfoo (1 unstable [amd64]) Conf coolfoover (1 unstable [amd64]) Conf needscoolfoo (1 unstable [amd64])" aptget install needscoolfoo coolfoover -s - testfailureequal "$BADPREFIX -The following packages have unmet dependencies: - needscoolfooany : Depends: coolbar:any but it is not installable -E: Unable to correct problems, you have held broken packages." aptget install needscoolfooany -s + testsuccessequal "Reading package lists... +Building dependency tree... +The following additional packages will be installed: + coolfoo +The following NEW packages will be installed: + coolfoo needscoolfooany +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. +Inst coolfoo (1 unstable [amd64]) +Inst needscoolfooany (1 unstable [amd64]) +Conf coolfoo (1 unstable [amd64]) +Conf needscoolfooany (1 unstable [amd64])" aptget install needscoolfooany -s testsuccessequal 'Reading package lists... Building dependency tree... The following additional packages will be installed: @@ -225,7 +231,7 @@ E: Unable to correct problems, you have held broken packages." aptget install ne testfailureequal "$BADPREFIX The following packages have unmet dependencies: needscoolfoover3 : Depends: coolfoo:any (>= 2) - Depends: coolbar (>= 3) + Depends: coolbar:any (>= 3) E: Unable to correct problems, you have held broken packages." aptget install needscoolfoover3 -s } solveableinsinglearch3 @@ -236,10 +242,61 @@ configarchitecture 'amd64' solveableinsinglearch0 testfailureequal 'Reading package lists... Building dependency tree... -E: Unable to locate package needsfoo' aptget install needsfoo:i386 -s +E: Unable to locate package needsfoo:i386' aptget install needsfoo:i386 -s solveableinsinglearch1 'needsfooany' solveableinsinglearch1 'needsfoover1' testfailureequal "$NEEDSFOO2NATIVE" aptget install needsfoover2 -s solveableinsinglearch2 solveableinsinglearch3 + +msgmsg 'multi-arch with barbarian archs' +configarchitecture 'amd64' 'i386' +insertinstalledpackage 'foo' 'armel' '1' 'Multi-Arch: allowed' +insertinstalledpackage 'coolfoo' 'armel' '1' 'Multi-Arch:allowed +Provides: coolbar' +insertinstalledpackage 'bar-needer' 'armel' '1.0' 'Depends: coolbar:any' + +testsuccess aptget check +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + foo +The following packages will be REMOVED: + foo:armel +The following NEW packages will be installed: + foo needsfooany +0 upgraded, 2 newly installed, 1 to remove and 0 not upgraded. +Remv foo:armel [1] +Inst foo (1 unstable [amd64]) +Inst needsfooany (1 unstable [amd64]) +Conf foo (1 unstable [amd64]) +Conf needsfooany (1 unstable [amd64])' aptget install needsfooany -s +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + foo +The following packages will be REMOVED: + foo:armel +The following NEW packages will be installed: + foo needsfooany:i386 +0 upgraded, 2 newly installed, 1 to remove and 0 not upgraded. +Remv foo:armel [1] +Inst foo (1 unstable [amd64]) +Inst needsfooany:i386 (1 unstable [i386]) +Conf foo (1 unstable [amd64]) +Conf needsfooany:i386 (1 unstable [i386])' aptget install needsfooany:i386 -s +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + coolfoo +The following packages will be REMOVED: + coolfoo:armel +The following NEW packages will be installed: + coolfoo needscoolfoover0 +0 upgraded, 2 newly installed, 1 to remove and 0 not upgraded. +Remv coolfoo:armel [1] [bar-needer:armel ] +Inst coolfoo (1 unstable [amd64]) +Inst needscoolfoover0 (1 unstable [amd64]) +Conf coolfoo (1 unstable [amd64]) +Conf needscoolfoover0 (1 unstable [amd64])' aptget install needscoolfoover0 -s