mirror of
https://https.git.savannah.gnu.org/git/grep.git
synced 2026-01-26 15:39:06 +00:00
* NEWS: Document it. * src/dfasearch.c (GEAcompile): * src/kwsearch.c (Fcompile): Use C99-style decls to simplify. Avoid duplicate code. * tests/empty-line: Add some more tests like this.
42 lines
987 B
Bash
Executable File
42 lines
987 B
Bash
Executable File
#! /bin/sh
|
|
# Test that the empty pattern matches everything.
|
|
# Some of these tests failed in grep 2.18.
|
|
|
|
. "${srcdir=.}/init.sh"; path_prepend_ ../src
|
|
|
|
fail=0
|
|
printf 'abc\n' >in || framework_failure_
|
|
nl='
|
|
'
|
|
|
|
for opt in '' -E -F; do
|
|
case $opt in
|
|
'') prefix='\(\)\1';;
|
|
-E) prefix='()\1';;
|
|
-F) prefix="foo$nl";;
|
|
esac
|
|
|
|
for pattern in "" "$nl" "---$nl" "${nl}foo"; do
|
|
for pat in "$pattern" "$prefix$pattern"; do
|
|
grep $opt -e "$pat" in >out || fail=1
|
|
compare in out || fail=1
|
|
|
|
printf -- '%s\n' "$pat" >pat || framework_failure_
|
|
grep $opt -f pat in >out || fail=1
|
|
compare in out || fail=1
|
|
|
|
# Check that pattern files that end in non-newlines
|
|
# are treated as if a newline were appended.
|
|
case $pattern in
|
|
'' | *"$nl") ;;
|
|
*)
|
|
printf -- '%s' "$pat" >pat || framework_failure_
|
|
grep $opt -f pat in >out || fail=1
|
|
compare in out || fail=1;;
|
|
esac
|
|
done
|
|
done
|
|
done
|
|
|
|
Exit $fail
|