]> git.saurik.com Git - apt.git/blob - test/integration/test-apt-cli-search
sync TFRewrite*Order arrays with dpkg and dak
[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 Long description of stuff and such, with lines
20 .
21 and paragraphs and everything."
22 insertpackage 'testing' 'bar' 'i386' '2.0' '' '' "$DESCR2"
23
24 setupaptarchive
25
26 APTARCHIVE=$(readlink -f ./aptarchive)
27
28 testfailureequal 'E: You must give at least one search pattern' aptcache search
29 testfailureequal 'E: You must give at least one search pattern' apt search
30
31 # with OP progress
32 testsuccessequal "Sorting...
33 Full Text Search...
34 foo/unstable 1.0 all
35 $DESCR
36 " apt search xxyyzz
37
38 # without op progress
39 testsuccessequal "foo/unstable 1.0 all
40 $DESCR
41 " apt search -qq xxyyzz
42 testempty apt search -qq --names-only xxyyzz
43
44 # search name
45 testsuccessequal "foo/unstable 1.0 all
46 $DESCR
47 " apt search -qq foo
48 testsuccessequal "foo/unstable 1.0 all
49 $DESCR
50 " apt search -qq --names-only foo
51
52 # search with multiple words is a AND search
53 testsuccessequal "foo/unstable 1.0 all
54 $DESCR
55 " apt search -qq aabbcc xxyyzz
56 testsuccessequal "foo/unstable 1.0 all
57 $DESCR
58 " apt search -qq 'a+b+c+' 'i*xxy{0,2}zz'
59
60 # search is not case-sensitive by default
61 testsuccessequal "foo/unstable 1.0 all
62 $DESCR
63 " apt search -qq uppercase
64 testsuccessequal "foo/unstable 1.0 all
65 $DESCR
66 " apt search -qq 'up[pP]erc[Aa]se'
67
68 # search is done in the long description
69 testsuccessequal "foo/unstable 1.0 all
70 $DESCR
71 " apt search -qq 'long description'
72 testsuccessequal "foo/unstable 1.0 all
73 $DESCR
74 Long description of stuff and such, with lines
75 .
76 and paragraphs and everything.
77 " apt search --full -qq 'long description'
78
79 # output is sorted and search word finds both package
80 testsuccessequal "bar/testing 2.0 i386
81 $DESCR2
82
83 foo/unstable 1.0 all
84 $DESCR
85 " apt search -qq aabbcc