]> git.saurik.com Git - apt.git/blobdiff - test/integration/test-apt-cli-search
test: Automatically discover CMake build directory
[apt.git] / test / integration / test-apt-cli-search
index 84650b366ea0ba9423b3aea11c65d53fc6b6d608..6457ece6c91a58022c087edc4ea99288970b6d11 100755 (executable)
@@ -1,46 +1,77 @@
 #!/bin/sh
 set -e
 
-TESTDIR=$(readlink -f $(dirname $0))
-. $TESTDIR/framework
+TESTDIR="$(readlink -f "$(dirname "$0")")"
+. "$TESTDIR/framework"
 
 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'
+DESCR='Some description that has a unusual word xxyyzz and aabbcc and a UPPERCASE'
 DESCR2='Some other description with the unusual aabbcc only'
-insertpackage 'unstable' 'foo' 'all' '1.0' '' '' "$DESCR"
+insertpackage 'unstable' 'foo' 'all' '1.0' '' '' "$DESCR
+ Long description of stuff and such, with lines
+ .
+ and paragraphs and everything."
 insertpackage 'testing' 'bar' 'i386' '2.0' '' '' "$DESCR2"
 
 setupaptarchive
 
-APTARCHIVE=$(readlink -f ./aptarchive)
+APTARCHIVE="$(readlink -f ./aptarchive)"
+
+testfailureequal 'E: You must give at least one search pattern' aptcache search
+testfailureequal 'E: You must give at least one search pattern' apt search
 
 # with OP progress 
-testequal "Sorting...
+testsuccessequal "Sorting...
 Full Text Search...
 foo/unstable 1.0 all
   $DESCR
 " apt search xxyyzz
 
 # without op progress
-testequal "foo/unstable 1.0 all
+testsuccessequal "foo/unstable 1.0 all
   $DESCR
 " apt search -qq xxyyzz
+testempty apt search -qq --names-only xxyyzz
+
+# search name
+testsuccessequal "foo/unstable 1.0 all
+  $DESCR
+" apt search -qq foo
+testsuccessequal "foo/unstable 1.0 all
+  $DESCR
+" apt search -qq --names-only foo
 
 # search with multiple words is a AND search
-testequal "foo/unstable 1.0 all
+testsuccessequal "foo/unstable 1.0 all
   $DESCR
 " apt search -qq aabbcc xxyyzz
+testsuccessequal "foo/unstable 1.0 all
+  $DESCR
+" apt search -qq 'a+b+c+' 'i*xxy{0,2}zz'
+
+# search is not case-sensitive by default
+testsuccessequal "foo/unstable 1.0 all
+  $DESCR
+" apt search -qq uppercase
+testsuccessequal "foo/unstable 1.0 all
+  $DESCR
+" apt search -qq 'up[pP]erc[Aa]se'
+
+# search is done in the long description
+testsuccessequal "foo/unstable 1.0 all
+  $DESCR
+" apt search -qq 'long description'
+testsuccessequal "foo/unstable 1.0 all
+  $DESCR
+  Long description of stuff and such, with lines
+  .
+  and paragraphs and everything.
+" apt search --full -qq 'long description'
 
 # output is sorted and search word finds both package
-testequal "bar/testing 2.0 i386
+testsuccessequal "bar/testing 2.0 i386
   $DESCR2
 
 foo/unstable 1.0 all