/[pcre]/code/trunk/RunGrepTest
ViewVC logotype

Contents of /code/trunk/RunGrepTest

Parent Directory Parent Directory | Revision Log Revision Log


Revision 116 - (hide annotations) (download)
Fri Mar 9 15:23:02 2007 UTC (7 years, 4 months ago) by ph10
Original Path: code/trunk/RunGrepTest.in
File size: 10622 byte(s)
Tests cleanup: use -C in RunTest; add /Z to pcretest and make test 3 
independent of link size.

1 nigel 77 #! /bin/sh
2    
3     # This file is generated by configure from RunGrepTest.in. Make any changes
4     # to that file.
5    
6 ph10 97 # Set the C locale, so that sort(1) behaves predictably.
7     LC_ALL=C
8     export LC_ALL
9    
10 nigel 77 echo "Testing pcregrep"
11 nigel 87 ./pcregrep -V
12 nigel 77
13     # Run pcregrep tests. The assumption is that the PCRE tests check the library
14     # itself. What we are checking here is the file handling and options that are
15     # supported by pcregrep.
16    
17 ph10 97 cf="diff -u"
18 nigel 87 valgrind=
19 nigel 81 if [ ! -d testdata ] ; then
20     ln -s @top_srcdir@/testdata testdata
21     fi
22     testdata=./testdata
23 nigel 77
24 nigel 87 while [ $# -gt 0 ] ; do
25     case $1 in
26 ph10 97 valgrind) valgrind="valgrind -q --leak-check=no";;
27 nigel 87 *) echo "Unknown argument $1"; exit 1;;
28     esac
29     shift
30     done
31 nigel 77
32 ph10 116 # Check for the availability of UTF-8 support
33    
34 nigel 93 ./pcretest -C | ./pcregrep "No UTF-8 support" >/dev/null
35 ph10 116 utf8=$?
36 nigel 93
37 nigel 87 echo "---------------------------- Test 1 ------------------------------" >testtry
38     $valgrind ./pcregrep PATTERN $testdata/grepinput >>testtry
39 nigel 77
40     echo "---------------------------- Test 2 ------------------------------" >>testtry
41 nigel 87 $valgrind ./pcregrep '^PATTERN' $testdata/grepinput >>testtry
42 nigel 77
43     echo "---------------------------- Test 3 ------------------------------" >>testtry
44 nigel 87 $valgrind ./pcregrep -in PATTERN $testdata/grepinput >>testtry
45 nigel 77
46     echo "---------------------------- Test 4 ------------------------------" >>testtry
47 nigel 87 $valgrind ./pcregrep -ic PATTERN $testdata/grepinput >>testtry
48 nigel 77
49     echo "---------------------------- Test 5 ------------------------------" >>testtry
50 nigel 87 $valgrind ./pcregrep -in PATTERN $testdata/grepinput $testdata/grepinputx >>testtry
51 nigel 77
52     echo "---------------------------- Test 6 ------------------------------" >>testtry
53 nigel 87 $valgrind ./pcregrep -inh PATTERN $testdata/grepinput $testdata/grepinputx >>testtry
54 nigel 77
55     echo "---------------------------- Test 7 ------------------------------" >>testtry
56 nigel 87 $valgrind ./pcregrep -il PATTERN $testdata/grepinput $testdata/grepinputx >>testtry
57 nigel 77
58     echo "---------------------------- Test 8 ------------------------------" >>testtry
59 nigel 87 $valgrind ./pcregrep -l PATTERN $testdata/grepinput $testdata/grepinputx >>testtry
60 nigel 77
61     echo "---------------------------- Test 9 ------------------------------" >>testtry
62 nigel 87 $valgrind ./pcregrep -q PATTERN $testdata/grepinput $testdata/grepinputx >>testtry
63 nigel 77 echo "RC=$?" >>testtry
64    
65     echo "---------------------------- Test 10 -----------------------------" >>testtry
66 nigel 87 $valgrind ./pcregrep -q NEVER-PATTERN $testdata/grepinput $testdata/grepinputx >>testtry
67 nigel 77 echo "RC=$?" >>testtry
68    
69     echo "---------------------------- Test 11 -----------------------------" >>testtry
70 nigel 87 $valgrind ./pcregrep -vn pattern $testdata/grepinputx >>testtry
71 nigel 77
72     echo "---------------------------- Test 12 -----------------------------" >>testtry
73 nigel 87 $valgrind ./pcregrep -ix pattern $testdata/grepinputx >>testtry
74 nigel 77
75     echo "---------------------------- Test 13 -----------------------------" >>testtry
76 nigel 87 $valgrind ./pcregrep -f$testdata/greplist $testdata/grepinputx >>testtry
77 nigel 77
78     echo "---------------------------- Test 14 -----------------------------" >>testtry
79 nigel 87 $valgrind ./pcregrep -w pat $testdata/grepinput $testdata/grepinputx >>testtry
80 nigel 77
81     echo "---------------------------- Test 15 -----------------------------" >>testtry
82 nigel 87 $valgrind ./pcregrep 'abc^*' $testdata/grepinput 2>>testtry >>testtry
83 nigel 77
84     echo "---------------------------- Test 16 -----------------------------" >>testtry
85 nigel 87 $valgrind ./pcregrep abc $testdata/grepinput $testdata/nonexistfile 2>>testtry >>testtry
86 nigel 77
87     echo "---------------------------- Test 17 -----------------------------" >>testtry
88 nigel 87 $valgrind ./pcregrep -M 'the\noutput' $testdata/grepinput >>testtry
89 nigel 77
90     echo "---------------------------- Test 18 -----------------------------" >>testtry
91 nigel 87 $valgrind ./pcregrep -Mn '(the\noutput|dog\.\n--)' $testdata/grepinput >>testtry
92 nigel 77
93     echo "---------------------------- Test 19 -----------------------------" >>testtry
94 nigel 87 $valgrind ./pcregrep -Mix 'Pattern' $testdata/grepinputx >>testtry
95 nigel 77
96     echo "---------------------------- Test 20 -----------------------------" >>testtry
97 nigel 87 $valgrind ./pcregrep -Mixn 'complete pair\nof lines' $testdata/grepinputx >>testtry
98 nigel 77
99     echo "---------------------------- Test 21 -----------------------------" >>testtry
100 nigel 87 $valgrind ./pcregrep -nA3 'four' $testdata/grepinputx >>testtry
101 nigel 77
102     echo "---------------------------- Test 22 -----------------------------" >>testtry
103 nigel 87 $valgrind ./pcregrep -nB3 'four' $testdata/grepinputx >>testtry
104 nigel 77
105     echo "---------------------------- Test 23 -----------------------------" >>testtry
106 nigel 87 $valgrind ./pcregrep -C3 'four' $testdata/grepinputx >>testtry
107 nigel 77
108     echo "---------------------------- Test 24 -----------------------------" >>testtry
109 nigel 87 $valgrind ./pcregrep -A9 'four' $testdata/grepinputx >>testtry
110 nigel 77
111     echo "---------------------------- Test 25 -----------------------------" >>testtry
112 nigel 87 $valgrind ./pcregrep -nB9 'four' $testdata/grepinputx >>testtry
113 nigel 77
114     echo "---------------------------- Test 26 -----------------------------" >>testtry
115 nigel 87 $valgrind ./pcregrep -A9 -B9 'four' $testdata/grepinputx >>testtry
116 nigel 77
117     echo "---------------------------- Test 27 -----------------------------" >>testtry
118 nigel 87 $valgrind ./pcregrep -A10 'four' $testdata/grepinputx >>testtry
119 nigel 77
120     echo "---------------------------- Test 28 -----------------------------" >>testtry
121 nigel 87 $valgrind ./pcregrep -nB10 'four' $testdata/grepinputx >>testtry
122 nigel 77
123     echo "---------------------------- Test 29 -----------------------------" >>testtry
124 nigel 87 $valgrind ./pcregrep -C12 -B10 'four' $testdata/grepinputx >>testtry
125 nigel 77
126     echo "---------------------------- Test 30 -----------------------------" >>testtry
127 nigel 87 $valgrind ./pcregrep -inB3 'pattern' $testdata/grepinput $testdata/grepinputx >>testtry
128 nigel 77
129     echo "---------------------------- Test 31 -----------------------------" >>testtry
130 nigel 87 $valgrind ./pcregrep -inA3 'pattern' $testdata/grepinput $testdata/grepinputx >>testtry
131 nigel 77
132     echo "---------------------------- Test 32 -----------------------------" >>testtry
133 nigel 87 $valgrind ./pcregrep -L 'fox' $testdata/grepinput $testdata/grepinputx >>testtry
134 nigel 77
135     echo "---------------------------- Test 33 -----------------------------" >>testtry
136 ph10 97 $valgrind ./pcregrep 'fox' $testdata/grepnonexist >>testtry 2>&1
137 nigel 77 echo "RC=$?" >>testtry
138    
139     echo "---------------------------- Test 34 -----------------------------" >>testtry
140 ph10 97 $valgrind ./pcregrep -s 'fox' $testdata/grepnonexist >>testtry 2>&1
141 nigel 77 echo "RC=$?" >>testtry
142    
143     echo "---------------------------- Test 35 -----------------------------" >>testtry
144 ph10 97 $valgrind ./pcregrep -L -r --include=grepinputx 'fox' $testdata >>testtry
145 nigel 77 echo "RC=$?" >>testtry
146    
147     echo "---------------------------- Test 36 -----------------------------" >>testtry
148 ph10 97 $valgrind ./pcregrep -L -r --include=grepinput --exclude 'grepinput$' 'fox' $testdata | sort >>testtry
149 nigel 77 echo "RC=$?" >>testtry
150    
151 nigel 87 echo "---------------------------- Test 37 -----------------------------" >>testtry
152     $valgrind ./pcregrep '^(a+)*\d' $testdata/grepinput >>testtry 2>teststderr
153     echo "RC=$?" >>testtry
154     echo "======== STDERR ========" >>testtry
155     cat teststderr >>testtry
156 nigel 77
157 nigel 87 echo "---------------------------- Test 38 ------------------------------" >>testtry
158     $valgrind ./pcregrep '>\x00<' $testdata/grepinput >>testtry
159    
160     echo "---------------------------- Test 39 ------------------------------" >>testtry
161     $valgrind ./pcregrep -A1 'before the binary zero' $testdata/grepinput >>testtry
162    
163     echo "---------------------------- Test 40 ------------------------------" >>testtry
164     $valgrind ./pcregrep -B1 'after the binary zero' $testdata/grepinput >>testtry
165    
166     echo "---------------------------- Test 41 ------------------------------" >>testtry
167     $valgrind ./pcregrep -B1 -o '\w+ the binary zero' $testdata/grepinput >>testtry
168    
169     echo "---------------------------- Test 41 ------------------------------" >>testtry
170     $valgrind ./pcregrep -B1 -onH '\w+ the binary zero' $testdata/grepinput >>testtry
171    
172     echo "---------------------------- Test 42 ------------------------------" >>testtry
173     $valgrind ./pcregrep -on 'before|zero|after' $testdata/grepinput >>testtry
174    
175     echo "---------------------------- Test 43 ------------------------------" >>testtry
176     $valgrind ./pcregrep -on -e before -e zero -e after $testdata/grepinput >>testtry
177    
178     echo "---------------------------- Test 44 ------------------------------" >>testtry
179     $valgrind ./pcregrep -on -f $testdata/greplist -e binary $testdata/grepinput >>testtry
180    
181     echo "---------------------------- Test 45 ------------------------------" >>testtry
182     $valgrind ./pcregrep -e abc -e '(unclosed' $testdata/grepinput 2>>testtry >>testtry
183    
184     echo "---------------------------- Test 46 ------------------------------" >>testtry
185     $valgrind ./pcregrep -Fx "AB.VE
186     elephant" $testdata/grepinput >>testtry
187    
188     echo "---------------------------- Test 47 ------------------------------" >>testtry
189     $valgrind ./pcregrep -F "AB.VE
190     elephant" $testdata/grepinput >>testtry
191    
192     echo "---------------------------- Test 48 ------------------------------" >>testtry
193     $valgrind ./pcregrep -F -e DATA -e "AB.VE
194     elephant" $testdata/grepinput >>testtry
195    
196 nigel 91 echo "---------------------------- Test 49 ------------------------------" >>testtry
197     $valgrind ./pcregrep "^(abc|def|ghi|jkl)" $testdata/grepinputx >>testtry
198    
199     echo "---------------------------- Test 50 ------------------------------" >>testtry
200     $valgrind ./pcregrep -N CR "^(abc|def|ghi|jkl)" $testdata/grepinputx >>testtry
201    
202     echo "---------------------------- Test 51 ------------------------------" >>testtry
203     $valgrind ./pcregrep --newline=crlf "^(abc|def|ghi|jkl)" $testdata/grepinputx >>testtry
204    
205     echo "---------------------------- Test 52 ------------------------------" >>testtry
206 ph10 97 pattern=`printf 'def\rjkl'`
207     $valgrind ./pcregrep --newline=cr -F "$pattern" $testdata/grepinputx >>testtry
208 nigel 91
209     echo "---------------------------- Test 53 ------------------------------" >>testtry
210 ph10 97 pattern=`printf 'xxx\r\njkl'`
211     $valgrind ./pcregrep --newline=crlf -F "$pattern" $testdata/grepinputx >>testtry
212 nigel 91
213 nigel 93 echo "---------------------------- Test 54 ------------------------------" >>testtry
214     $valgrind ./pcregrep -n --newline=any "^(abc|def|ghi|jkl)" $testdata/grepinputx >>testtry
215    
216 nigel 77 # Now compare the results.
217    
218     $cf testtry $testdata/grepoutput
219 nigel 93 if [ $? != 0 ] ; then exit 1; fi
220 nigel 77
221 nigel 93 # These tests require UTF-8 support
222    
223 ph10 116 if [ $utf8 -ne 0 ] ; then
224 nigel 93 echo "Testing pcregrep UTF-8 features"
225 ph10 97
226 nigel 93 echo "---------------------------- Test U1 ------------------------------" >testtry
227     $valgrind ./pcregrep -n -u --newline=any "^X" $testdata/grepinput8 >>testtry
228    
229     echo "---------------------------- Test U2 ------------------------------" >>testtry
230     $valgrind ./pcregrep -n -u -C 3 --newline=any "Match" $testdata/grepinput8 >>testtry
231    
232     $cf testtry $testdata/grepoutput8
233     if [ $? != 0 ] ; then exit 1; fi
234    
235     else
236     echo "Skipping pcregrep UTF-8 tests: no UTF-8 support in PCRE library"
237     fi
238    
239 ph10 97 exit 0
240 nigel 93
241 nigel 77 # End

Properties

Name Value
svn:keywords "Author Date Id Revision Url"

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12