]> git.saurik.com Git - apt.git/blobdiff - test/integration/test-bug-758153-versioned-provides-support
add --sha512 option + documentation for apt-ftparchive
[apt.git] / test / integration / test-bug-758153-versioned-provides-support
index 2904ae5a14b3ad5540f83d0c86f9d1201f0969cd..af8c863bb3a27185702812435d2607400602dc99 100755 (executable)
@@ -24,10 +24,35 @@ insertpackage 'experimental' 'foreign-webserver' 'i386' '4' 'Multi-Arch: foreign
 Provides: httpd (= 4)'
 insertpackage 'experimental' 'cool-webapp' 'all' '4' 'Depends: httpd (>= 4)'
 
 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
 
 setupaptarchive
 
-testequal 'Reading package lists...
+testsuccessequal 'Reading package lists...
 Building dependency tree...
 Building dependency tree...
+Calculating upgrade...
 The following packages will be upgraded:
   webapp webserver
 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
 The following packages will be upgraded:
   webapp webserver
 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
@@ -36,7 +61,7 @@ Inst webapp [1] (2 unstable [all])
 Conf webserver (2 unstable [amd64])
 Conf webapp (2 unstable [all])' aptget dist-upgrade -s
 
 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
 Building dependency tree...
 The following packages will be upgraded:
   webapp webserver
@@ -46,7 +71,7 @@ Inst webapp [1] (2 unstable [all])
 Conf webserver (2 unstable [amd64])
 Conf webapp (2 unstable [all])' aptget install webapp webserver -s
 
 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
 Building dependency tree...
 The following packages will be upgraded:
   webapp webserver
@@ -56,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
 
 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
 Building dependency tree...
 The following packages will be upgraded:
   webapp webserver
@@ -66,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
 
 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
 Building dependency tree...
 The following NEW packages will be installed:
   foreign-webserver:i386
@@ -78,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
 
 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
 Building dependency tree...
 The following NEW packages will be installed:
   foreign-webserver:i386
@@ -90,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
 
 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
 Building dependency tree...
 The following NEW packages will be installed:
   foreign-webserver:i386
@@ -102,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
 
 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
 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
@@ -114,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
 
  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
 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
@@ -126,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
 
  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
 Building dependency tree...
 The following NEW packages will be installed:
   cool-webapp foreign-webserver:i386
@@ -135,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
 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 -q=0
+
+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 -q=0
+
+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