X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/05f64ca2e483709faa6bc69dfa79129d2d4c679e..dfd863ea50c0fcf9b9ac4dfb5ae0e64c529bd767:/test/integration/test-apt-cache diff --git a/test/integration/test-apt-cache b/test/integration/test-apt-cache index f3db8024f..bff1667e8 100755 --- a/test/integration/test-apt-cache +++ b/test/integration/test-apt-cache @@ -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' @@ -16,6 +16,9 @@ Recommends: cool (>= 2) | cooler (<< 5)' "$DESCR" insertpackage 'unstable' 'bar' 'all' '1' 'Depends: bar Breaks: foo (<< 1) Replaces: foo (<< 1)' "$DESCR" +insertpackage 'unstable' 'specific' 'all' '1' 'Depends: bar:i386, specific:amd64 +Breaks: foo:amd64 (<< 1) +Replaces: foo:i386 (<< 1)' "$DESCR" setupaptarchive @@ -31,6 +34,7 @@ testempty aptcache unmet dpkg testsuccess aptcache stats cp rootdir/tmp/testsuccess.output stats.output testsuccess test -s stats.output +testfailureequal 'E: apt-cache stats does not take any arguments' aptcache stats foo testsuccess aptcache xvcg foo cp rootdir/tmp/testsuccess.output xvcg.output testsuccess test -s xvcg.output @@ -42,83 +46,138 @@ testsuccess aptcache dump cp rootdir/tmp/testsuccess.output dump.output testsuccess test -s dump.output -testsuccessequal 'dpkg -bar -fancy -foo' aptcache pkgnames +testsuccessequal 'bar +foo +dpkg +specific +fancy' aptcache pkgnames testsuccessequal 'bar' aptcache pkgnames bar -testsuccessequal 'fancy -foo' aptcache pkgnames f +testsuccessequal 'foo +fancy' aptcache pkgnames f -testsuccessequal " foo | 1 | file:$(readlink -f .)/aptarchive/ unstable/main amd64 Packages" aptcache madison foo +testsuccessequal " foo | 1 | file:$(readlink -f .)/aptarchive unstable/main all Packages" aptcache madison foo ### depends testsuccessequal 'foo Depends: bar - |Recommends: - Recommends: Conflicts: - Conflicts: ' aptcache depends foo + |Recommends: + Recommends: ' aptcache depends foo testsuccessequal 'foo Depends: bar - Recommends: Conflicts: - Conflicts: ' aptcache depends foo -o APT::Cache::ShowOnlyFirstOr=1 + |Recommends: + Recommends: ' aptcache depends foo --implicit testsuccessequal 'foo Depends: bar - |Recommends: (>= 2) - Recommends: (<< 5) Conflicts: - Conflicts: ' aptcache depends foo -o APT::Cache::ShowVersion=1 + Recommends: ' aptcache depends foo -o APT::Cache::ShowOnlyFirstOr=1 testsuccessequal 'foo Depends: bar Conflicts: - Conflicts: ' aptcache depends foo --no-recommends + Recommends: ' aptcache depends foo -o APT::Cache::ShowOnlyFirstOr=1 --implicit testsuccessequal 'foo - Depends: bar' aptcache depends foo --important + Depends: bar + Conflicts: + |Recommends: (>= 2) + Recommends: (<< 5)' aptcache depends foo -o APT::Cache::ShowVersion=1 testsuccessequal 'foo + Depends: bar Conflicts: - Conflicts: ' aptcache depends foo --important --no-depends --conflicts + |Recommends: (>= 2) + Recommends: (<< 5)' aptcache depends foo -o APT::Cache::ShowVersion=1 --implicit testsuccessequal 'foo Depends: bar + Conflicts: ' aptcache depends foo --no-recommends +testsuccessequal 'foo + Depends: bar + Conflicts: ' aptcache depends foo --no-recommends --implicit +testsuccessequal 'foo + Depends: bar' aptcache depends foo --important --implicit +testsuccessequal 'foo + Conflicts: ' aptcache depends foo --important --no-depends --conflicts +testsuccessequal 'foo + Conflicts: ' aptcache depends foo --important --no-depends --conflicts --implicit +testsuccessequal 'foo + Depends: bar + Conflicts: |Recommends: Recommends: +bar + Depends: bar + Breaks: foo + Replaces: foo + + +' aptcache depends foo --recurse +testsuccessequal 'foo + Depends: bar Conflicts: - Conflicts: + |Recommends: + Recommends: bar Depends: bar Breaks: foo - Breaks: Replaces: foo + Breaks: Replaces: + - - -' aptcache depends foo --recurse +' aptcache depends foo --recurse --implicit +testsuccessequal 'foo + Depends: bar +bar + Depends: bar + Replaces: foo' aptcache depends foo --recurse --important --replaces testsuccessequal 'foo Depends: bar bar Depends: bar Replaces: foo Replaces: -' aptcache depends foo --recurse --important --replaces +' aptcache depends foo --recurse --important --replaces --implicit +testsuccessequal 'bar + Depends: bar + Breaks: foo + Replaces: foo' aptcache depends bar +testsuccessequal 'bar + Depends: bar + Breaks: foo + Replaces: foo + Breaks: + Replaces: ' aptcache depends bar --implicit + +testsuccessequal 'specific + Depends: + Depends: + specific + Breaks: + Replaces: ' aptcache depends specific +testsuccessequal 'specific + Depends: + Depends: + specific + Breaks: + Replaces: ' aptcache depends specific --implicit -## rdpends +## rdepends +# Note that specific does not appear in this list as it doesn't depend on foo, +# but on an arch-specific foo! testsuccessequal 'foo Reverse Depends: bar bar' aptcache rdepends foo testsuccessequal 'foo Reverse Depends: - Replaces: bar - Breaks: bar' aptcache rdepends foo -o APT::Cache::ShowDependencyType=1 + Breaks: bar + Replaces: bar' aptcache rdepends foo -o APT::Cache::ShowDependencyType=1 testsuccessequal 'foo Reverse Depends: - Replaces: bar (<< 1) - Breaks: bar (<< 1)' aptcache rdepends foo -o APT::Cache::ShowDependencyType=1 -o APT::Cache::ShowVersion=1 + Breaks: bar (<< 1) + Replaces: bar (<< 1)' aptcache rdepends foo -o APT::Cache::ShowDependencyType=1 -o APT::Cache::ShowVersion=1 testsuccessequal 'foo Reverse Depends: Breaks: bar (<< 1)' aptcache rdepends foo -o APT::Cache::ShowDependencyType=1 -o APT::Cache::ShowVersion=1 --important --breaks