diff options
author | Jim Meyering <meyering@redhat.com> | 2010-03-14 11:07:39 +0100 |
---|---|---|
committer | Jim Meyering <meyering@redhat.com> | 2010-03-14 12:14:03 +0100 |
commit | 45be60187525b45b3d979d45f365c89fd321fc54 (patch) | |
tree | 1b8d410884c677235b59c62625d9a7471566cce5 /tests | |
parent | 2d6b4e93db8058d23d4e37734b6ad65f9f05872b (diff) | |
download | grep-45be60187525b45b3d979d45f365c89fd321fc54.tar.gz |
tests: clean up fedora.sh
* tests/fedora.sh: Use "grep", not ${GREP}.
Use init.sh.
Use timeout 10, not sleep 1 (three times).
The latter would always sleep for 3 seconds, and the test would
fail with a false positive on a slow system or with a heavily
instrumented (valgrind) executable.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/fedora.sh | 56 |
1 files changed, 30 insertions, 26 deletions
diff --git a/tests/fedora.sh b/tests/fedora.sh index a179271b..2b2fe83e 100644 --- a/tests/fedora.sh +++ b/tests/fedora.sh @@ -1,5 +1,8 @@ #!/bin/bash +: ${srcdir=.} +. "$srcdir/init.sh"; path_prepend_ ../src + # GREP Regression test suite for Fedora bugs and fixes # (c) 2008 Lubomir Rintel # Licensed under the same terms as GNU Grep itself @@ -31,45 +34,46 @@ cat > 116909.out <<EOF a c EOF -${GREP} -F -w -f 116909.list 116909.in | diff - 116909.out && ok || fail +grep -F -w -f 116909.list 116909.in | diff - 116909.out && ok || fail U=https://bugzilla.redhat.com/show_bug.cgi?id=123362 echo -n "bad handling of brackets in UTF-8: " echo Y > 123362.out -echo Y | LC_ALL=de_DE.UTF-8 ${GREP} -i '[y,Y]' | diff - 123362.out && ok | fail +echo Y | LC_ALL=de_DE.UTF-8 grep -i '[y,Y]' | diff - 123362.out && ok | fail U=https://bugzilla.redhat.com/show_bug.cgi?id=112869 echo -n "crash with \W: " echo '<form>' > 112869.out -LANG=it_IT ${GREP} -iE '\Wform\W' 112869.out | diff - 112869.out && ok || fail - -U=https://bugzilla.redhat.com/show_bug.cgi?id=189580 -echo -n "grep -D skip opening a special file: " -${GREP} -D skip foo /dev/zero & -sleep 1 -kill $! 2>/dev/null && fail || ok - -U=https://bugzilla.redhat.com/show_bug.cgi?id=169524 -echo -n "grep -Fw looping infinitely: " -echo foobar | ${GREP} -Fw "" & -sleep 1 -kill $! 2>/dev/null && fail || ok - -U=https://bugzilla.redhat.com/show_bug.cgi?id=140781 -echo -n "fgrep hangs on binary files: " -${GREP} -F grep $(which ${GREP}) >/dev/null & -sleep 1 -kill $! 2>/dev/null && fail || ok +LANG=it_IT grep -iE '\Wform\W' 112869.out | diff - 112869.out && ok || fail + +if ( timeout --version ) > /dev/null 2>&1; then + + U=https://bugzilla.redhat.com/show_bug.cgi?id=189580 + echo -n "grep -D skip opening a special file: " + timeout 10 grep -D skip foo /dev/zero + test $? = 124 && fail || ok + + U=https://bugzilla.redhat.com/show_bug.cgi?id=169524 + echo -n "grep -Fw looping infinitely: " + echo foobar | timeout 10 grep -Fw "" + test $? = 124 && fail || ok + + U=https://bugzilla.redhat.com/show_bug.cgi?id=140781 + echo -n "fgrep hangs on binary files: " + timeout 10 grep -F grep "$abs_top_builddir/src/grep" >/dev/null + test $? = 124 && fail || ok + +fi U=https://bugzilla.redhat.com/show_bug.cgi?id=161700 echo -n "grep -Fw fails to match anything: " echo test > 161700.out -${GREP} -Fw test 161700.out | diff - 161700.out && ok || fail +grep -Fw test 161700.out | diff - 161700.out && ok || fail U=https://bugzilla.redhat.com/show_bug.cgi?id=179698 echo -n "grep -w broken in non-utf8 multibyte locales: " echo za a > 179698.out -LANG=ja_JP.eucjp ${GREP} -w a 179698.out | diff - 179698.out && ok || fail +LANG=ja_JP.eucjp grep -w a 179698.out | diff - 179698.out && ok || fail # Skip the rest of tests in compiled without PCRE echo a |grep -P a >/dev/null || exit $failures @@ -77,7 +81,7 @@ echo a |grep -P a >/dev/null || exit $failures U=https://bugzilla.redhat.com/show_bug.cgi?id=171379 echo -n "grep -P crashes on whitespace lines: " echo ' ' > 171379.out -${GREP} -P '^\s+$' 171379.out | diff - 171379.out && ok || fail +grep -P '^\s+$' 171379.out | diff - 171379.out && ok || fail U=https://bugzilla.redhat.com/show_bug.cgi?id=204255 echo -n "-e '' does not work if not a first parameter: " @@ -87,10 +91,10 @@ diff 204255.first 204255.second && ok || fail U=https://bugzilla.redhat.com/show_bug.cgi?id=324781 echo -n "bad handling of line breaks with grep -P #1: " -echo -ne "a\na" | ${GREP} -P '[^a]' >/dev/null && fail || ok +echo -ne "a\na" | grep -P '[^a]' >/dev/null && fail || ok # This is mostly a check that fix for above doesn't break -P further echo -n "bad handling of line breaks with grep -P #2: " -echo -ne "a\na" | ${GREP} -P '[^b].[^b]' >/dev/null && fail || ok +echo -ne "a\na" | grep -P '[^b].[^b]' >/dev/null && fail || ok exit $failures |