X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/9c4e6026c498078aa223eae95f2c9752cb45525c..090c6f0a7ff49acb49be67433a7114ff8bfe5a70:/test/integration/test-bug-758153-versioned-provides-support diff --git a/test/integration/test-bug-758153-versioned-provides-support b/test/integration/test-bug-758153-versioned-provides-support index 21f9123c9..d6e5ab643 100755 --- a/test/integration/test-bug-758153-versioned-provides-support +++ b/test/integration/test-bug-758153-versioned-provides-support @@ -24,9 +24,33 @@ insertpackage 'experimental' 'foreign-webserver' 'i386' '4' 'Multi-Arch: foreign Provides: httpd (= 4)' insertpackage 'experimental' 'cool-webapp' 'all' '4' 'Depends: httpd (>= 4)' +# arch-qualified provides, see #777071 +insertpackage 'unstable' 'foo' 'all' '1' 'Provides: bar:i386' +insertpackage 'unstable' 'baz' 'i386,amd64' '1' 'Depends: bar' +insertpackage 'experimental' 'baz' 'i386,amd64' '2' 'Depends: bar:i386' +insertpackage 'experimental' 'baz-broken' 'i386' '2' 'Depends: bar:amd64' + +insertpackage 'unstable' 'next' 'amd64' '1' 'Multi-Arch: foreign +Provides: next (= 2)' +insertpackage 'unstable' 'needsrealnext' 'amd64,i386' '2' 'Depends: next (>= 2)' + +insertpackage 'unstable' 'virtualnext2' 'amd64' '1' 'Multi-Arch: foreign +Provides: next2 (= 2)' +insertpackage 'unstable' 'needsnext2' 'amd64,i386' '2' 'Depends: next2 (>= 2)' + +insertpackage 'unstable' 'virtualnext3' 'amd64' '1' 'Multi-Arch: no +Provides: next3 (= 2)' +insertpackage 'unstable' 'needsnext3' 'amd64,i386' '2' 'Depends: next3 (>= 2)' + +insertpackage 'unstable' 'selfprov' 'amd64' '2' 'Provides: selfprov (= 1)' +insertpackage 'unstable' 'needsselfprov1' 'amd64' '1' 'Depends: selfprov (= 1)' +insertpackage 'unstable' 'needsselfprov2' 'amd64' '1' 'Depends: selfprov (= 2)' +insertpackage 'unstable' 'needsselfprov12' 'amd64' '1' 'Depends: selfprov (= 1), selfprov (= 2)' +insertpackage 'unstable' 'needsselfprov123' 'amd64' '1' 'Depends: selfprov (= 1), selfprov (= 2), selfprov (= 3)' + setupaptarchive -testequal 'Reading package lists... +testsuccessequal 'Reading package lists... Building dependency tree... Calculating upgrade... The following packages will be upgraded: @@ -37,7 +61,7 @@ Inst webapp [1] (2 unstable [all]) Conf webserver (2 unstable [amd64]) Conf webapp (2 unstable [all])' aptget dist-upgrade -s -testequal 'Reading package lists... +testsuccessequal 'Reading package lists... Building dependency tree... The following packages will be upgraded: webapp webserver @@ -47,7 +71,7 @@ Inst webapp [1] (2 unstable [all]) Conf webserver (2 unstable [amd64]) Conf webapp (2 unstable [all])' aptget install webapp webserver -s -testequal 'Reading package lists... +testsuccessequal 'Reading package lists... Building dependency tree... The following packages will be upgraded: webapp webserver @@ -57,7 +81,7 @@ Inst webapp [1] (3 experimental [all]) Conf webserver (2 unstable [amd64]) Conf webapp (3 experimental [all])' aptget install webapp=3 webserver -s -testequal 'Reading package lists... +testsuccessequal 'Reading package lists... Building dependency tree... The following packages will be upgraded: webapp webserver @@ -67,7 +91,7 @@ Inst webapp [1] (2 unstable [all]) Conf webserver (3 experimental [amd64]) Conf webapp (2 unstable [all])' aptget install webapp webserver=3 -s -testequal 'Reading package lists... +testsuccessequal 'Reading package lists... Building dependency tree... The following NEW packages will be installed: foreign-webserver:i386 @@ -79,7 +103,7 @@ Inst webapp [1] (2 unstable [all]) Conf foreign-webserver:i386 (2 unstable [i386]) Conf webapp (2 unstable [all])' aptget install webapp foreign-webserver:i386 -s -testequal 'Reading package lists... +testsuccessequal 'Reading package lists... Building dependency tree... The following NEW packages will be installed: foreign-webserver:i386 @@ -91,7 +115,7 @@ Inst webapp [1] (3 experimental [all]) Conf foreign-webserver:i386 (2 unstable [i386]) Conf webapp (3 experimental [all])' aptget install webapp=3 foreign-webserver:i386 -s -testequal 'Reading package lists... +testsuccessequal 'Reading package lists... Building dependency tree... The following NEW packages will be installed: foreign-webserver:i386 @@ -103,7 +127,7 @@ Inst webapp [1] (2 unstable [all]) Conf foreign-webserver:i386 (4 experimental [i386]) Conf webapp (2 unstable [all])' aptget install webapp foreign-webserver:i386=4 -s -testequal 'Reading package lists... +testfailureequal 'Reading package lists... Building dependency tree... Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable @@ -115,7 +139,7 @@ The following packages have unmet dependencies: cool-webapp : Depends: httpd (>= 4) E: Unable to correct problems, you have held broken packages.' aptget install cool-webapp -s -testequal 'Reading package lists... +testfailureequal 'Reading package lists... Building dependency tree... Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable @@ -127,7 +151,7 @@ The following packages have unmet dependencies: cool-webapp : Depends: httpd (>= 4) E: Unable to correct problems, you have held broken packages.' aptget install cool-webapp foreign-webserver:i386 -s -testequal 'Reading package lists... +testsuccessequal 'Reading package lists... Building dependency tree... The following NEW packages will be installed: cool-webapp foreign-webserver:i386 @@ -136,3 +160,182 @@ Inst foreign-webserver:i386 (4 experimental [i386]) Inst cool-webapp (4 experimental [all]) Conf foreign-webserver:i386 (4 experimental [i386]) Conf cool-webapp (4 experimental [all])' aptget install cool-webapp foreign-webserver:i386=4 -s + +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + foo +The following NEW packages will be installed: + baz:i386 foo +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst foo (1 unstable [all]) +Inst baz:i386 (1 unstable [i386]) +Conf foo (1 unstable [all]) +Conf baz:i386 (1 unstable [i386])' aptget install baz:i386 -s + +testfailureequal 'Reading package lists... +Building dependency tree... +Some packages could not be installed. This may mean that you have +requested an impossible situation or if you are using the unstable +distribution that some required packages have not yet been created +or been moved out of Incoming. +The following information may help to resolve the situation: + +The following packages have unmet dependencies: + baz : Depends: bar but it is not installable +E: Unable to correct problems, you have held broken packages.' aptget install baz:amd64 -s + +testsuccessequal "Reading package lists... +Building dependency tree... +Selected version '2' (experimental [amd64]) for 'baz' +The following additional packages will be installed: + foo +The following NEW packages will be installed: + baz foo +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst foo (1 unstable [all]) +Inst baz (2 experimental [amd64]) +Conf foo (1 unstable [all]) +Conf baz (2 experimental [amd64])" aptget install baz/experimental -s + +testsuccessequal "Reading package lists... +Building dependency tree... +Selected version '2' (experimental [i386]) for 'baz:i386' +The following additional packages will be installed: + foo +The following NEW packages will be installed: + baz:i386 foo +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst foo (1 unstable [all]) +Inst baz:i386 (2 experimental [i386]) +Conf foo (1 unstable [all]) +Conf baz:i386 (2 experimental [i386])" aptget install baz:i386/experimental -s + +testfailureequal 'Reading package lists... +Building dependency tree... +Some packages could not be installed. This may mean that you have +requested an impossible situation or if you are using the unstable +distribution that some required packages have not yet been created +or been moved out of Incoming. +The following information may help to resolve the situation: + +The following packages have unmet dependencies: + baz-broken:i386 : Depends: bar:amd64 but it is not installable +E: Unable to correct problems, you have held broken packages.' aptget install baz-broken -s + +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + next +The following NEW packages will be installed: + needsrealnext next +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst next (1 unstable [amd64]) +Inst needsrealnext (2 unstable [amd64]) +Conf next (1 unstable [amd64]) +Conf needsrealnext (2 unstable [amd64])' aptget install needsrealnext -s + +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + next +The following NEW packages will be installed: + needsrealnext:i386 next +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst next (1 unstable [amd64]) +Inst needsrealnext:i386 (2 unstable [i386]) +Conf next (1 unstable [amd64]) +Conf needsrealnext:i386 (2 unstable [i386])' aptget install needsrealnext:i386 -s + +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + virtualnext2 +The following NEW packages will be installed: + needsnext2 virtualnext2 +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst virtualnext2 (1 unstable [amd64]) +Inst needsnext2 (2 unstable [amd64]) +Conf virtualnext2 (1 unstable [amd64]) +Conf needsnext2 (2 unstable [amd64])' aptget install needsnext2 -s + +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + virtualnext2 +The following NEW packages will be installed: + needsnext2:i386 virtualnext2 +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst virtualnext2 (1 unstable [amd64]) +Inst needsnext2:i386 (2 unstable [i386]) +Conf virtualnext2 (1 unstable [amd64]) +Conf needsnext2:i386 (2 unstable [i386])' aptget install needsnext2:i386 -s + +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + virtualnext3 +The following NEW packages will be installed: + needsnext3 virtualnext3 +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst virtualnext3 (1 unstable [amd64]) +Inst needsnext3 (2 unstable [amd64]) +Conf virtualnext3 (1 unstable [amd64]) +Conf needsnext3 (2 unstable [amd64])' aptget install needsnext3 -s + +testfailureequal 'Reading package lists... +Building dependency tree... +Some packages could not be installed. This may mean that you have +requested an impossible situation or if you are using the unstable +distribution that some required packages have not yet been created +or been moved out of Incoming. +The following information may help to resolve the situation: + +The following packages have unmet dependencies: + needsnext3:i386 : Depends: next3:i386 (>= 2) but it is not installable +E: Unable to correct problems, you have held broken packages.' aptget install needsnext3:i386 -s + +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + selfprov +The following NEW packages will be installed: + needsselfprov1 selfprov +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst selfprov (2 unstable [amd64]) +Inst needsselfprov1 (1 unstable [amd64]) +Conf selfprov (2 unstable [amd64]) +Conf needsselfprov1 (1 unstable [amd64])' aptget install needsselfprov1 -s +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + selfprov +The following NEW packages will be installed: + needsselfprov2 selfprov +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst selfprov (2 unstable [amd64]) +Inst needsselfprov2 (1 unstable [amd64]) +Conf selfprov (2 unstable [amd64]) +Conf needsselfprov2 (1 unstable [amd64])' aptget install needsselfprov2 -s +testsuccessequal 'Reading package lists... +Building dependency tree... +The following additional packages will be installed: + selfprov +The following NEW packages will be installed: + needsselfprov12 selfprov +0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. +Inst selfprov (2 unstable [amd64]) +Inst needsselfprov12 (1 unstable [amd64]) +Conf selfprov (2 unstable [amd64]) +Conf needsselfprov12 (1 unstable [amd64])' aptget install needsselfprov12 -s +testfailureequal 'Reading package lists... +Building dependency tree... +Some packages could not be installed. This may mean that you have +requested an impossible situation or if you are using the unstable +distribution that some required packages have not yet been created +or been moved out of Incoming. +The following information may help to resolve the situation: + +The following packages have unmet dependencies: + needsselfprov123 : Depends: selfprov (= 3) +E: Unable to correct problems, you have held broken packages.' aptget install needsselfprov123 -s