support regular expressions in 'apt search'
[ntk/apt.git] / test / integration / test-apt-cli-search
1 #!/bin/sh
2 set -e
3
4 TESTDIR=$(readlink -f $(dirname $0))
5 . $TESTDIR/framework
6
7 setupenvironment
8 configarchitecture "i386"
9
10 if [ ! -x ${BUILDDIRECTORY}/apt ]; then
11 msgmsg "No ${BUILDDIRECTORY}/apt"
12 msgskip
13 exit 0
14 fi
15
16 DESCR='Some description that has a unusual word xxyyzz and aabbcc and a UPPERCASE'
17 DESCR2='Some other description with the unusual aabbcc only'
18 insertpackage 'unstable' 'foo' 'all' '1.0' '' '' "$DESCR"
19 insertpackage 'testing' 'bar' 'i386' '2.0' '' '' "$DESCR2"
20
21 setupaptarchive
22
23 APTARCHIVE=$(readlink -f ./aptarchive)
24
25 # with OP progress
26 testequal "Sorting...
27 Full Text Search...
28 foo/unstable 1.0 all
29 $DESCR
30 " apt search xxyyzz
31
32 # without op progress
33 testequal "foo/unstable 1.0 all
34 $DESCR
35 " apt search -qq xxyyzz
36 testempty apt search -qq --names-only xxyyzz
37
38 # search name
39 testequal "foo/unstable 1.0 all
40 $DESCR
41 " apt search -qq foo
42 testequal "foo/unstable 1.0 all
43 $DESCR
44 " apt search -qq --names-only foo
45
46 # search with multiple words is a AND search
47 testequal "foo/unstable 1.0 all
48 $DESCR
49 " apt search -qq aabbcc xxyyzz
50 testequal "foo/unstable 1.0 all
51 $DESCR
52 " apt search -qq 'a+b+c+' 'i*xxy{0,2}zz'
53
54 # search is not case-sensitive by default
55 testequal "foo/unstable 1.0 all
56 $DESCR
57 " apt search -qq uppercase
58 testequal "foo/unstable 1.0 all
59 $DESCR
60 " apt search -qq 'up[pP]erc[Aa]se'
61
62 # output is sorted and search word finds both package
63 testequal "bar/testing 2.0 i386
64 $DESCR2
65
66 foo/unstable 1.0 all
67 $DESCR
68 " apt search -qq aabbcc