avoid unnecessary newline
[gnutls.git] / gl / tests / test-init.sh
bloba2825cc769ca837c5b597fdff093ca989ff9f910
1 #!/bin/sh
2 # Unit tests for init.sh
3 # Copyright (C) 2011-2012 Free Software Foundation, Inc.
4 # This file is part of the GNUlib Library.
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>. */
19 : ${srcdir=.}
20 . "$srcdir/init.sh"; path_prepend_ .
22 fail=0
24 test_compare()
26 touch empty || fail=1
27 echo xyz > in || fail=1
29 compare /dev/null /dev/null >out 2>err || fail=1
30 test -s out && fail_ "out not empty: $(cat out)"
31 # "err" should be empty, too, but has "set -x" output when VERBOSE=yes
32 case $- in *x*) ;; *) test -s err && fail_ "err not empty: $(cat err)";; esac
34 compare /dev/null empty >out 2>err || fail=1
35 test -s out && fail_ "out not empty: $(cat out)"
36 case $- in *x*) ;; *) test -s err && fail_ "err not empty: $(cat err)";; esac
38 compare in in >out 2>err || fail=1
39 test -s out && fail_ "out not empty: $(cat out)"
40 case $- in *x*) ;; *) test -s err && fail_ "err not empty: $(cat err)";; esac
42 compare /dev/null in >out 2>err && fail=1
43 cat <<\EOF > exp
44 diff -u /dev/null in
45 --- /dev/null 1970-01-01
46 +++ in 1970-01-01
47 +xyz
48 EOF
49 compare exp out || fail=1
50 case $- in *x*) ;; *) test -s err && fail_ "err not empty: $(cat err)";; esac
52 compare empty in >out 2>err && fail=1
53 # Compare against expected output only if compare is using diff -u.
54 if grep @ out >/dev/null; then
55 # Remove the TAB-date suffix on each --- and +++ line,
56 # for both the expected and the actual output files.
57 # Also remove the @@ line, since Solaris 5.10 and GNU diff formats differ:
58 # -@@ -0,0 +1 @@
59 # +@@ -1,0 +1,1 @@
60 sed 's/ .*//;/^@@/d' out > k && mv k out
61 cat <<\EOF > exp
62 --- empty
63 +++ in
64 +xyz
65 EOF
66 compare exp out || fail=1
68 case $- in *x*) ;; *) test -s err && fail_ "err not empty: $(cat err)";; esac
71 test_compare
73 Exit $fail