changeset 12389:cfc6e617b290

test-xalloc-die: fix test for mingw When cross-compiling on mingw to target mingw, argv[0] still includes a .exe suffix. Rather than worry about ${EXEEXT}, just add a sed post-process. Also, simplify the script by using tests/init.sh. * modules/xalloc-die-tests (Files): Add tests/init.sh. * tests/test-xalloc-die.sh: Rewrite to use init.sh. Strip directory and .exe suffix off argv[0] output. Signed-off-by: Eric Blake <ebb9@byu.net>
author Eric Blake <ebb9@byu.net>
date Sat, 05 Dec 2009 09:24:54 -0700
parents c14905650e6d
children f203ad5f7ea8
files ChangeLog modules/xalloc-die-tests tests/test-xalloc-die.sh
diffstat 3 files changed, 14 insertions(+), 25 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2009-12-05  Eric Blake  <ebb9@byu.net>
 
+	test-xalloc-die: fix test for mingw
+	* modules/xalloc-die-tests (Files): Add tests/init.sh.
+	* tests/test-xalloc-die.sh: Rewrite to use init.sh.  Strip
+	directory and .exe suffix off argv[0] output.
+
 	test-fseeko: fix test for mingw
 	* tests/test-fseeko.c (fseek): Redefine GL_LINK_WARNING, rather
 	than undefining fseek, so test will pass on mingw.
--- a/modules/xalloc-die-tests
+++ b/modules/xalloc-die-tests
@@ -1,6 +1,7 @@
 Files:
 tests/test-xalloc-die.c
 tests/test-xalloc-die.sh
+tests/init.sh
 
 Depends-on:
 progname
--- a/tests/test-xalloc-die.sh
+++ b/tests/test-xalloc-die.sh
@@ -16,38 +16,21 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-tmpfiles=""
-trap '__st=$?; rm -fr $tmpfiles; exit $__st' 0
-trap '__st=$?; (exit $__st); exit $__st' 1 2 3 15
+. "${srcdir=.}/init.sh" --set-path=.
 
-if ( diff --version < /dev/null 2>&1 | grep GNU ) 2>&1 > /dev/null; then
-  compare() { diff -u "$@"; }
-elif ( cmp --version < /dev/null 2>&1 | grep GNU ) 2>&1 > /dev/null; then
-  compare() { cmp -s "$@"; }
-else
-  compare() { cmp "$@"; }
-fi
-
-tmpout=t-xalloc-die.tmp-stderr
-tmperr=t-xalloc-die.tmp-stdout
-tmpfiles="$tmpout $tmperr ${tmperr}2"
-
-PATH=".:$PATH"
-export PATH
-test-xalloc-die 2> ${tmperr} > ${tmpout}
+test-xalloc-die 2> err > out
 case $? in
   1) ;;
-  *) (exit 1); exit 1 ;;
+  *) Exit 1;;
 esac
 
-tr -d '\015' < $tmperr > ${tmperr}2 || { (exit 1); exit 1; }
+tr -d '\015' < err \
+  | sed 's,.*test-xalloc-die[.ex]*:,test-xalloc-die:,' > err2 || Exit 1
 
-compare - ${tmperr}2 <<\EOF || { (exit 1); exit 1; }
+compare - err2 <<\EOF || Exit 1
 test-xalloc-die: memory exhausted
 EOF
 
-test -s $tmpout && { (exit 1); exit 1; }
+test -s out && Exit 1
 
-rm -fr $tmpfiles
-
-exit 0
+Exit $fail