#!/bin/sh set -e TESTDIR="$(readlink -f "$(dirname "$0")")" . "$TESTDIR/framework" setupenvironment configarchitecture "i386" 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 Long description of stuff and such, with lines . and paragraphs and everything." insertpackage 'testing' 'bar' 'i386' '2.0' '' '' "$DESCR2" setupaptarchive 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 testsuccessequal "Sorting... Full Text Search... foo/unstable 1.0 all $DESCR " apt search xxyyzz # without op progress 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 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 testsuccessequal "bar/testing 2.0 i386 $DESCR2 foo/unstable 1.0 all $DESCR " apt search -qq aabbcc