1#! /usr/bin/ksh 2# 3# 4# This file and its contents are supplied under the terms of the 5# Common Development and Distribution License ("CDDL"), version 1.0. 6# You may only use this file in accordance with the terms of version 7# 1.0 of the CDDL. 8# 9# A full copy of the text of the CDDL should have accompanied this 10# source. A copy of the CDDL is also available via the Internet at 11# http://www.illumos.org/license/CDDL. 12# 13 14# 15# Copyright 2014 Nexenta Systems, Inc. All rights reserved. 16# 17 18XGREP=${XGREP:=/usr/xpg4/bin/grep} 19FILEDIR=$MY_TESTS/tests/files 20 21fail() { 22 echo $1 23 exit -1 24} 25 26FLAGLIST=" 27-n 28-c 29-q 30-v 31-nv 32-vc 33-A 5 34-nA 5 35-cA 5 36-qA 5 37-vA 5 38-nvA 5 39-vcA 5 40-B 5 41-nB 5 42-cB 5 43-qB 5 44-vB 5 45-nvB 5 46-vcB 5 47-C 5 48-nC 5 49-cC 5 50-qC 5 51-vC 5 52-nvC 5 53-vcC 5 54-B 5 -A 2 55-nB 5 -A 2 56-cB 5 -A 2 57-qB 5 -A 2 58-vB 5 -A 2 59-nvB 5 -A 2 60-vcB 5 -A 2 61-B 5 -A 2 -C 5 62-nB 5 -A 2 -C 5 63-cB 5 -A 2 -C 5 64-qB 5 -A 2 -C 5 65-vB 5 -A 2 -C 5 66-nvB 5 -A 2 -C 5 67-vcB 5 -A 2 -C 5 68-5 69-n -5 70-c -5 71-q -5 72-v -5 73-nv -5 74-vc -5 75-50000 76-n -50000 77-c -50000 78-q -50000 79-v -50000 80-nv -50000 81-vc -50000 82-C 5 -B 4 -A 2 83-nC 5 -B 4 -A 2 84-cC 5 -B 4 -A 2 85-qC 5 -B 4 -A 2 86-vC 5 -B 4 -A 2 87-nvC 5 -B 4 -A 2 88-vcC 5 -B 4 -A 2" 89 90echo "$FLAGLIST" > /tmp/flags 91 92cd $FILEDIR 93 94i=0 95while read flags; do 96 print -n "grep $flags: " 97 $XGREP $flags a test0 test1 test2 \ 98 test3 test4 test5 test6 \ 99 test7 > out 100 if [[ $? -ne 0 ]]; then 101 fail "failed on exit" 102 elif [ -n "$(diff out gout$i)" ]; then 103 fail "output is different" 104 fi 105 echo "passed" 106 ((i++)) 107done < /tmp/flags 108