summaryrefslogtreecommitdiff
path: root/test/integration/test-essential-force-loopbreak
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2016-07-03 13:57:25 +0200
committerJulian Andres Klode <jak@debian.org>2016-10-05 12:02:19 +0200
commit6c36aa231b8dcde3b4698157a1ed1e7e4054a0ea (patch)
tree68f8e65daee32da082bcbb16602a25a591b1c9ca /test/integration/test-essential-force-loopbreak
parentc614d66183639638f588422e2b0b3258d4f52323 (diff)
pass --force-remove-essential to dpkg only if needed
APT (usually) knows which package is essential or not, so we can avoid passing this force flag to dpkg unconditionally if the user hasn't chosen a non-default essential handling obscuring the information. (cherry picked from commit d3930f8716f439c229cd3d11813823d847a2ecff)
Diffstat (limited to 'test/integration/test-essential-force-loopbreak')
-rwxr-xr-xtest/integration/test-essential-force-loopbreak3
1 files changed, 3 insertions, 0 deletions
diff --git a/test/integration/test-essential-force-loopbreak b/test/integration/test-essential-force-loopbreak
index 6f7d99cb6..f585e9c42 100755
--- a/test/integration/test-essential-force-loopbreak
+++ b/test/integration/test-essential-force-loopbreak
@@ -43,6 +43,9 @@ E: Internal Error, Could not early remove sysvinit:$(dpkg --print-architecture)
# with enough force however …
cp -a dpkg.status.backup rootdir/var/lib/dpkg/status
+ testsuccess aptget install systemd-sysv -y -t "$1" -o APT::Force-LoopBreak=1 -o Debug::pkgDpkgPm=1
+ cp rootdir/tmp/testsuccess.output apt.output
+ testsuccess grep -- '--force-remove-essential --remove sysvinit' apt.output
testsuccess aptget install systemd-sysv -y -t "$1" -o APT::Force-LoopBreak=1
testdpkginstalled 'sysvinit' 'systemd-sysv'
}