]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/groff/contrib/gdiffmk/tests/runtests.in
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / groff / contrib / gdiffmk / tests / runtests.in
1 #! /bin/sh
2 #       A very simple function test for gdiffmk.sh.
3
4 srcdir=@srcdir@
5
6 command=../gdiffmk
7
8 #       Test the number of arguments and the first argument.
9 case $#-$1 in
10 1-clean )
11         rm -fv test_result* tmp_file*
12         exit 0
13         ;;
14 1-run )
15         ;;
16 * )
17         echo >&2 "$0 [ clean | run ]
18 Run a few simple tests on \`${command}'."'
19
20 clean   Remove the test_result? and tmp_file? files.
21 run     Run the tests.
22 '
23         exit 255
24         ;;
25 esac
26
27 function TestResult {
28         if cmp -s $1 $2
29         then
30                 echo $2 PASSED
31         else
32                 echo ''
33                 echo $2 TEST FAILED
34                 diff $1 $2
35                 echo ''
36         fi
37 }
38
39 tmpfile=/tmp/$$
40 trap 'rm -f ${tmpfile}' 0 1 2 3 15
41
42 #       Run tests.
43
44 #       3 file arguments
45 ResultFile=test_result1
46 ${command}  ${srcdir}/file1  ${srcdir}/file2 ${ResultFile} 2>${tmpfile}
47 cat ${tmpfile} >>${ResultFile}
48 TestResult ${srcdir}/test_baseline ${ResultFile}
49
50 #       OUTPUT to stdout by default
51 ResultFile=test_result2
52 ${command}  ${srcdir}/file1  ${srcdir}/file2  >${ResultFile} 2>&1
53 TestResult ${srcdir}/test_baseline ${ResultFile}
54
55 #       OUTPUT to stdout via  -  argument
56 ResultFile=test_result3
57 ${command}  ${srcdir}/file1  ${srcdir}/file2 - >${ResultFile} 2>&1
58 TestResult ${srcdir}/test_baseline ${ResultFile}
59
60 #       FILE1 from standard input via  -  argument
61 ResultFile=test_result4
62 ${command}  - ${srcdir}/file2 <${srcdir}/file1  >${ResultFile} 2>&1
63 TestResult ${srcdir}/test_baseline ${ResultFile}
64
65 #       FILE2 from standard input via  -  argument
66 ResultFile=test_result5
67 ${command}  ${srcdir}/file1 - <${srcdir}/file2  >${ResultFile} 2>&1
68 TestResult ${srcdir}/test_baseline ${ResultFile}
69
70 #       Different values for addmark, changemark, deletemark
71 ResultFile=test_result6
72 ${command}  -aA -cC -dD  ${srcdir}/file1 ${srcdir}/file2  >${ResultFile} 2>&1
73 TestResult ${srcdir}/test_baseline6 ${ResultFile}
74
75 #       Test for accidental file overwrite.
76 ResultFile=test_result7
77 cp ${srcdir}/file2 tmp_file7
78 ${command}  -aA -dD -cC  ${srcdir}/file1 tmp_file7  tmp_file7   \
79                                                         >${ResultFile} 2>&1
80 TestResult ${srcdir}/test_baseline7 ${ResultFile}
81
82 #       Test -D option
83 ResultFile=test_result8
84 ${command}  -D  ${srcdir}/file1 ${srcdir}/file2 >${ResultFile} 2>&1
85 TestResult ${srcdir}/test_baseline8 ${ResultFile}
86
87 #       Test -D  and  -M  options
88 ResultFile=test_result9
89 ${command}  -D  -M '<<<<' '>>>>'                                \
90                         ${srcdir}/file1 ${srcdir}/file2 >${ResultFile} 2>&1
91 TestResult ${srcdir}/test_baseline9 ${ResultFile}
92
93 #       Test -D  and  -B  options
94 ResultFile=test_result10
95 ${command}  -D  -B  ${srcdir}/file1 ${srcdir}/file2 >${ResultFile} 2>&1
96 TestResult ${srcdir}/test_baseline10 ${ResultFile}
97
98 #       EOF