diff options
Diffstat (limited to '')
-rwxr-xr-x | src/grep/tests/options | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/grep/tests/options b/src/grep/tests/options new file mode 100755 index 0000000..84ff327 --- /dev/null +++ b/src/grep/tests/options @@ -0,0 +1,49 @@ +#! /bin/sh +# Test for POSIX options for grep +# +# Copyright (C) 2001, 2006, 2009-2021 Free Software Foundation, Inc. +# +# Copying and distribution of this file, with or without modification, +# are permitted in any medium without royalty provided the copyright +# notice and this notice are preserved. +# +# grep [ -E| -F][ -c| -l| -q ][-insvx] -e pattern_list +# [-f pattern_file] ... [file. ..] +# grep [ -E| -F][ -c| -l| -q ][-insvx][-e pattern_list] +# -f pattern_file ... [file ...] +# grep [ -E| -F][ -c| -l| -q ][-insvx] pattern_list [file...] + +. "${srcdir=.}/init.sh"; path_prepend_ ../src + +fail=0 + +# checking for -E extended regex +echo "abababccccccd" | grep -E -e 'c{3}' > /dev/null 2>&1 +if test $? -ne 0 ; then + echo "Options: Wrong status code, test #1 failed" + fail=1 +fi + +# checking for basic regex +echo "abababccccccd" | grep -G -e 'c\{3\}' > /dev/null 2>&1 +if test $? -ne 0 ; then + echo "Options: Wrong status code, test #2 failed" + fail=1 +fi + +# checking for fixed string +echo "abababccccccd" | grep -F -e 'c\{3\}' > /dev/null 2>&1 +if test $? -ne 1 ; then + echo "Options: Wrong status code, test #3 failed" + fail=1 +fi + +# checking for multiple -e options; see: +# https://bugs.gnu.org/21670 +echo abchelloabc | grep -e '^hello' -e 'hello$' > /dev/null 2>&1 +if test $? -ne 1 ; then + echo "Options: Wrong status code, test #4 failed" + fail=1 +fi + +Exit $fail |