]> git.saurik.com Git - apt.git/blobdiff - test/integration/test-bug-720597-build-dep-purge
pass --force-remove-essential to dpkg only if needed
[apt.git] / test / integration / test-bug-720597-build-dep-purge
index 6fa261fbdb78c5d4def9b2c537939dc57d3c7a88..4b36989eec81250c5f3bc3efad4f4308744d64a8 100755 (executable)
@@ -1,19 +1,23 @@
 #!/bin/sh
 set -e
 
-TESTDIR=$(readlink -f $(dirname $0))
-. $TESTDIR/framework
+TESTDIR="$(readlink -f "$(dirname "$0")")"
+. "$TESTDIR/framework"
 setupenvironment
-configarchitecture 'amd64'
+
+# we need this construct here as it isn't really possible to fake native arch for dpkg-* tools
+NATIVE="$(command dpkg --print-architecture)"
+configarchitecture $NATIVE
 
 insertinstalledpackage 'build-essential' 'all' '11.5' 'Multi-Arch: foreign'
 insertinstalledpackage 'pkga' 'all' '1'
-buildsimplenativepackage 'pkgb' 'amd64' '1' 'stable' 'Conflicts: pkga'
-buildsimplenativepackage 'pkgc' 'amd64' '1' 'stable' 'Build-Depends: pkgb'
+buildsimplenativepackage 'pkgb' "$NATIVE" '1' 'stable' 'Conflicts: pkga'
+buildsimplenativepackage 'pkgc' "$NATIVE" '1' 'stable' 'Build-Depends: pkgb'
 
 setupaptarchive
 
-testsuccessequal 'Reading package lists...
+testsuccessequal "Reading package lists...
+Reading package lists...
 Building dependency tree...
 The following packages will be REMOVED:
   pkga
@@ -21,10 +25,11 @@ The following NEW packages will be installed:
   pkgb
 0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
 Remv pkga [1]
-Inst pkgb (1 stable [amd64])
-Conf pkgb (1 stable [amd64])' aptget build-dep pkgc -s
+Inst pkgb (1 stable [$NATIVE])
+Conf pkgb (1 stable [$NATIVE])" aptget build-dep pkgc -s
 
-testsuccessequal 'Reading package lists...
+testsuccessequal "Reading package lists...
+Reading package lists...
 Building dependency tree...
 The following packages will be REMOVED:
   pkga*
@@ -32,5 +37,29 @@ The following NEW packages will be installed:
   pkgb
 0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
 Purg pkga [1]
-Inst pkgb (1 stable [amd64])
-Conf pkgb (1 stable [amd64])' aptget build-dep pkgc -s --purge
+Inst pkgb (1 stable [$NATIVE])
+Conf pkgb (1 stable [$NATIVE])" aptget build-dep pkgc -s --purge
+
+testsuccessequal 'Reading package lists...
+Building dependency tree...
+0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.' apt autoremove -s
+testdpkgnotinstalled pkgb
+testsuccess apt build-dep pkgc -y -o Debug::pkgDepCache::AutoInstall=1 -o Debug::pkgDepCache::Marker=1
+testdpkginstalled pkgb
+testsuccessequal 'Reading package lists...
+Building dependency tree...
+Reading state information...
+0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.' apt autoremove -s
+testsuccess apt purge pkgb pkgc -y
+testsuccessequal 'Reading package lists...
+Building dependency tree...
+Reading state information...
+0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.' apt autoremove -s
+testsuccess apt build-dep pkgc -y -o APT::Get::Build-Dep-Automatic=true
+testsuccessequal 'Reading package lists...
+Building dependency tree...
+Reading state information...
+The following packages will be REMOVED:
+  pkgb
+0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
+Remv pkgb [1]' apt autoremove -s