From 1bef0dd58a281ca2f2900a48459d2c87b4ba8bba Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Wed, 22 Jan 2014 08:25:02 +0100 Subject: add integration test for apt search --- test/integration/test-apt-cli-list | 47 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 test/integration/test-apt-cli-list (limited to 'test/integration/test-apt-cli-list') diff --git a/test/integration/test-apt-cli-list b/test/integration/test-apt-cli-list new file mode 100755 index 000000000..8d5df9051 --- /dev/null +++ b/test/integration/test-apt-cli-list @@ -0,0 +1,47 @@ +#!/bin/sh +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework + +setupenvironment +configarchitecture "i386" + +insertpackage 'unstable' 'foo' 'all' '1.0' +insertinstalledpackage 'bar' 'i386' '1.0' + +insertinstalledpackage 'foobar' 'i386' '1.0' +insertpackage 'unstable' 'foobar' 'i386' '2.0' + +setupaptarchive + +APTARCHIVE=$(readlink -f ./aptarchive) + +testequal "Listing... +bar/now 1.0 [installed,local] i386 +foo/unstable 1.0 all +foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list + +testequal "Listing... +foo/unstable 1.0 all +foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list "foo*" + +testequal "Listing... +foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list --upgradable + +# FIXME: hm, hm - does it make sense to have this different? shouldn't +# we use "installed,upgradable" consitently? +testequal "Listing... +bar/now 1.0 [installed,local] i386 +foobar/now 1.0 [installed,upgradable to: 2.0] i386" apt list --installed + +testequal "Listing... +foobar/unstable 2.0 [upgradable from: 1.0] i386 +foobar/now 1.0 [installed,upgradable to: 2.0] i386 +" apt list foobar --all-versions + +testequal "Listing... +bar/now 1.0 [installed,local] i386 + an autogenerated dummy bar=1.0/installed +" apt list bar --verbose + -- cgit v1.2.3-70-g09d2 From 4afa7d18b37661996d188959ba7917824e1545d3 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Fri, 31 Jan 2014 08:57:34 +0100 Subject: show "status" in apt list last --- apt-private/private-output.cc | 49 +++++++++++++++++++------------------- test/integration/test-apt-cli-list | 18 +++++++------- 2 files changed, 33 insertions(+), 34 deletions(-) (limited to 'test/integration/test-apt-cli-list') diff --git a/apt-private/private-output.cc b/apt-private/private-output.cc index e9b8037da..2ae112af4 100644 --- a/apt-private/private-output.cc +++ b/apt-private/private-output.cc @@ -190,45 +190,44 @@ void ListSingleVersion(pkgCacheFile &CacheFile, pkgRecords &records, /*{{{*/ // raring/linux-kernel version [upradable: new-version] // description pkgPolicy *policy = CacheFile.GetPolicy(); - out << std::setiosflags(std::ios::left) - << _config->Find("APT::Color::Highlight", "") - << name_str - << _config->Find("APT::Color::Neutral", "") - << "/" << suite - << " "; + std::string VersionStr = GetVersion(CacheFile, V); + std::string CandidateVerStr = GetCandidateVersion(CacheFile, P); + std::string InstalledVerStr = GetInstalledVersion(CacheFile, P); + std::string StatusStr; if(P.CurrentVer() == V && state.Upgradable()) { - out << GetVersion(CacheFile, V) - << " " - << "[" << _("installed,upgradable to: ") - << GetCandidateVersion(CacheFile, P) << "]"; + strprintf(StatusStr, _("[installed,upgradable to: %s]"), + CandidateVerStr.c_str()); } else if (P.CurrentVer() == V) { - out << GetVersion(CacheFile, V) - << " "; if(!V.Downloadable()) - out << _("[installed,local]"); + StatusStr = _("[installed,local]"); else if(V.Automatic() && state.Garbage) - out << _("[installed,auto-removable]"); + StatusStr = _("[installed,auto-removable]"); else if (state.Flags & pkgCache::Flag::Auto) - out << _("[installed,automatic]"); + StatusStr = _("[installed,automatic]"); else - out << _("[installed]"); + StatusStr = _("[installed]"); } else if (P.CurrentVer() && policy->GetCandidateVer(P) == V && state.Upgradable()) { - out << GetVersion(CacheFile, V) - << " " - << _("[upgradable from: ") - << GetInstalledVersion(CacheFile, P) << "]"; + strprintf(StatusStr, _("[upgradable from: %s]"), + InstalledVerStr.c_str()); } else { if (V.ParentPkg()->CurrentState == pkgCache::State::ConfigFiles) - out << GetVersion(CacheFile, V) - << " " - << _("[residual-config]"); + StatusStr = _("[residual-config]"); else - out << GetVersion(CacheFile, V); + StatusStr = ""; } - out << " " << GetArchitecture(CacheFile, P); + out << std::setiosflags(std::ios::left) + << _config->Find("APT::Color::Highlight", "") + << name_str + << _config->Find("APT::Color::Neutral", "") + << "/" << suite + << " " + << VersionStr << " " + << GetArchitecture(CacheFile, P); + if (StatusStr != "") + out << " " << StatusStr; if (include_summary) { out << std::endl diff --git a/test/integration/test-apt-cli-list b/test/integration/test-apt-cli-list index 8d5df9051..47507aeb8 100755 --- a/test/integration/test-apt-cli-list +++ b/test/integration/test-apt-cli-list @@ -18,30 +18,30 @@ setupaptarchive APTARCHIVE=$(readlink -f ./aptarchive) testequal "Listing... -bar/now 1.0 [installed,local] i386 +bar/now 1.0 i386 [installed,local] foo/unstable 1.0 all -foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list +foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list testequal "Listing... foo/unstable 1.0 all -foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list "foo*" +foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list "foo*" testequal "Listing... -foobar/unstable 2.0 [upgradable from: 1.0] i386" apt list --upgradable +foobar/unstable 2.0 i386 [upgradable from: 1.0]" apt list --upgradable # FIXME: hm, hm - does it make sense to have this different? shouldn't # we use "installed,upgradable" consitently? testequal "Listing... -bar/now 1.0 [installed,local] i386 -foobar/now 1.0 [installed,upgradable to: 2.0] i386" apt list --installed +bar/now 1.0 i386 [installed,local] +foobar/now 1.0 i386 [installed,upgradable to: 2.0]" apt list --installed testequal "Listing... -foobar/unstable 2.0 [upgradable from: 1.0] i386 -foobar/now 1.0 [installed,upgradable to: 2.0] i386 +foobar/unstable 2.0 i386 [upgradable from: 1.0] +foobar/now 1.0 i386 [installed,upgradable to: 2.0] " apt list foobar --all-versions testequal "Listing... -bar/now 1.0 [installed,local] i386 +bar/now 1.0 i386 [installed,local] an autogenerated dummy bar=1.0/installed " apt list bar --verbose -- cgit v1.2.3-70-g09d2 From 3c74988b38b9ef9326639603a9687ec0d292dfc9 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Sat, 22 Feb 2014 22:28:36 +0100 Subject: skip test if "apt" is not build --- test/integration/test-apt-cli-list | 6 ++++++ test/integration/test-apt-cli-search | 6 ++++++ test/integration/test-apt-cli-show | 6 ++++++ test/integration/test-apt-cli-upgrade | 7 +++++++ 4 files changed, 25 insertions(+) (limited to 'test/integration/test-apt-cli-list') diff --git a/test/integration/test-apt-cli-list b/test/integration/test-apt-cli-list index 47507aeb8..47cfb624a 100755 --- a/test/integration/test-apt-cli-list +++ b/test/integration/test-apt-cli-list @@ -7,6 +7,12 @@ TESTDIR=$(readlink -f $(dirname $0)) setupenvironment configarchitecture "i386" +if [ ! -x ${BUILDDIRECTORY}/apt ]; then + msgmsg "No ${BUILDDIRECTORY}/apt" + msgskip + exit 0 +fi + insertpackage 'unstable' 'foo' 'all' '1.0' insertinstalledpackage 'bar' 'i386' '1.0' diff --git a/test/integration/test-apt-cli-search b/test/integration/test-apt-cli-search index 979aff880..84650b366 100755 --- a/test/integration/test-apt-cli-search +++ b/test/integration/test-apt-cli-search @@ -7,6 +7,12 @@ TESTDIR=$(readlink -f $(dirname $0)) setupenvironment configarchitecture "i386" +if [ ! -x ${BUILDDIRECTORY}/apt ]; then + msgmsg "No ${BUILDDIRECTORY}/apt" + msgskip + exit 0 +fi + DESCR='Some description that has a unusual word xxyyzz and aabbcc' DESCR2='Some other description with the unusual aabbcc only' insertpackage 'unstable' 'foo' 'all' '1.0' '' '' "$DESCR" diff --git a/test/integration/test-apt-cli-show b/test/integration/test-apt-cli-show index 91cc9a3c0..4c8e134d6 100755 --- a/test/integration/test-apt-cli-show +++ b/test/integration/test-apt-cli-show @@ -7,6 +7,12 @@ TESTDIR=$(readlink -f $(dirname $0)) setupenvironment configarchitecture "i386" +if [ ! -x ${BUILDDIRECTORY}/apt ]; then + msgmsg "No ${BUILDDIRECTORY}/apt" + msgskip + exit 0 +fi + DESCR='Some description That has multiple lines' insertpackage 'unstable' 'foo' 'all' '1.0' '' '' "$DESCR" diff --git a/test/integration/test-apt-cli-upgrade b/test/integration/test-apt-cli-upgrade index 21ce69413..b6ee2270b 100755 --- a/test/integration/test-apt-cli-upgrade +++ b/test/integration/test-apt-cli-upgrade @@ -7,6 +7,13 @@ TESTDIR=$(readlink -f $(dirname $0)) setupenvironment configarchitecture "i386" +if [ ! -x ${BUILDDIRECTORY}/apt ]; then + msgmsg "No ${BUILDDIRECTORY}/apt" + msgskip + exit 0 +fi + + insertpackage 'unstable' 'foo' 'all' '2.0' 'Depends: foo-new-dependency' insertpackage 'unstable' 'foo-new-dependency' 'all' '2.0' insertinstalledpackage 'foo' 'all' '1.0' -- cgit v1.2.3-70-g09d2