view tests/test-perror.sh @ 14776:a3bd209aea02

test-perror: rewrite to use init script Make the test simpler, and also check for correct exit status. * modules/perror-tests (Files): Add init.sh. * tests/test-perror.sh: Use temporary directory. Signed-off-by: Eric Blake <eblake@redhat.com>
author Eric Blake <eblake@redhat.com>
date Fri, 20 May 2011 08:57:54 -0600
parents b652fa60a1df
children d9fdb6400ff8
line wrap: on
line source

#!/bin/sh
: ${srcdir=.}
. "$srcdir/init.sh"; path_prepend_ .

# Test NULL prefix. Result should not contain a number.
test-perror 2>&1 >/dev/null | LC_ALL=C tr -d '\r' > t-perror.tmp
grep '[0-9]' t-perror.tmp > /dev/null \
  && fail_ "result should not contain a number"

# Test empty prefix. Result should be the same.
test-perror '' 2>&1 >/dev/null | LC_ALL=C tr -d '\r' > t-perror1.tmp
diff t-perror.tmp t-perror1.tmp \
  || fail_ "empty prefix should behave like NULL argument"

# Test non-empty prefix.
test-perror foo 2>&1 >/dev/null | LC_ALL=C tr -d '\r' > t-perror3.tmp
sed -e 's/^/foo: /' < t-perror.tmp > t-perror2.tmp
diff t-perror2.tmp t-perror3.tmp || fail_ "prefix applied incorrectly"

# Test exit status.
test-perror >out 2>/dev/null || fail_ "unexpected exit status"
test -s out && fail_ "unexpected output"

exit 0