X-Git-Url: http://git.draconx.ca/gitweb/dxcommon.git/blobdiff_plain/bc3006694a3513139bf3e941a68c836530a9fe45..b3a380d027135bff7d13a08557bd7db294d18f08:/tests/programs.at diff --git a/tests/programs.at b/tests/programs.at index 0228ac3..b99fa82 100644 --- a/tests/programs.at +++ b/tests/programs.at @@ -6,24 +6,28 @@ dnl There is NO WARRANTY, to the extent permitted by law. AT_BANNER([Program tests]) -AT_SETUP([gob2 probes]) +m4_define([TEST_SIMPLE_PROGRAM_PROBES], + [TEST_SIMPLE_PROGRAM_PROBES_([$1], m4_toupper($1))]) +m4_define([TEST_SIMPLE_PROGRAM_PROBES_], +[AT_SETUP([$1 probes]) +AT_KEYWORDS([DX_PROG_$2 program])dnl mkdir bin -cp -P "$srcdir/t/gob2.sh" bin +cp -P "$srcdir/t/$1.sh" bin/$1 AT_DATA([test.in], -[[@HAVE_GOB2@ -@GOB2@ +[[@HAVE_$2@ +@$2@ ]]) # Unversioned tests -TEST_CONFIGURE_AC([[DX_PROG_GOB2([], [HAVE_GOB2=yes], [HAVE_GOB2=no]) -AC_SUBST([GOB2]) -AC_SUBST([HAVE_GOB2]) +TEST_CONFIGURE_AC([[DX_PROG_$2([], [HAVE_$2=yes], [HAVE_$2=no]) +AC_SUBST([$2]) +AC_SUBST([HAVE_$2]) set x conftest*; shift if test -f $[]1; then - AC_MSG_ERROR([conftest* left behind by [DX_PROG_GOB2]]) + AC_MSG_ERROR([$[]1 left behind by [DX_PROG_$2]]) fi AC_CONFIG_FILES([test]) @@ -33,58 +37,60 @@ TEST_AUTORECONF # Check the search via path lookup save_PATH=$PATH PATH=$PWD/bin${PATH:+":$PATH"} + +# Sanity test on PATH lookup +AT_CHECK([test x"`command -v $1`" = x"$PWD/bin/$1" || exit 99 #'']) + TEST_CONFIGURE AT_CHECK_UNQUOTED([cat test], [0], [yes -gob2 +$1 ]) PATH=$save_PATH # Check the search via user override -TEST_CONFIGURE([GOB2="$srcdir/t/gob2.sh"]) +TEST_CONFIGURE([$2="$srcdir/t/$1.sh"]) AT_CHECK_UNQUOTED([cat test], [0], [yes -$srcdir/t/gob2.sh +$srcdir/t/$1.sh ]) # Check that a bogus program doesn't come back as valid. -TEST_CONFIGURE([GOB2=true]) +TEST_CONFIGURE([$2=true]) AT_CHECK_UNQUOTED([cat test], [0], [no true ]) # min-version tests mv configure.ac configure.old -[sed 's/DX_PROG_GOB2(\[\]/DX_PROG_GOB2([2.1.3]/' configure.old >configure.ac] +sed ['s/\(DX_PROG_$2(\)\[\]/\1[2.1.3]/'] configure.old >configure.ac TEST_AUTORECONF -FAKE_GOB2_VERSION=2.0.0 -export FAKE_GOB2_VERSION -TEST_CONFIGURE([GOB2="$srcdir/t/gob2.sh"]) +TEST_CONFIGURE([FAKE_$2_VERSION=2.0.0 $2="$srcdir/t/$1.sh"]) AT_CHECK_UNQUOTED([cat test], [0], [no -$srcdir/t/gob2.sh +$srcdir/t/$1.sh ]) -FAKE_GOB2_VERSION=3.0.0 -TEST_CONFIGURE([GOB2="$srcdir/t/gob2.sh"]) +TEST_CONFIGURE([FAKE_$2_VERSION=3.0.0 $2="$srcdir/t/$1.sh"]) AT_CHECK_UNQUOTED([cat test], [0], [yes -$srcdir/t/gob2.sh +$srcdir/t/$1.sh ]) -FAKE_GOB2_VERSION=2.5.0 -TEST_CONFIGURE([GOB2="$srcdir/t/gob2.sh"]) +TEST_CONFIGURE([FAKE_$2_VERSION=2.5.0 $2="$srcdir/t/$1.sh"]) AT_CHECK_UNQUOTED([cat test], [0], [yes -$srcdir/t/gob2.sh +$srcdir/t/$1.sh ]) -FAKE_GOB2_VERSION=2.1.2 -TEST_CONFIGURE([GOB2="$srcdir/t/gob2.sh"]) +TEST_CONFIGURE([FAKE_$2_VERSION=2.1.2 $2="$srcdir/t/$1.sh"]) AT_CHECK_UNQUOTED([cat test], [0], [no -$srcdir/t/gob2.sh +$srcdir/t/$1.sh ]) -FAKE_GOB2_VERSION=2.1.3 -TEST_CONFIGURE([GOB2="$srcdir/t/gob2.sh"]) +TEST_CONFIGURE([FAKE_$2_VERSION=2.1.3 $2="$srcdir/t/$1.sh"]) AT_CHECK_UNQUOTED([cat test], [0], [yes -$srcdir/t/gob2.sh +$srcdir/t/$1.sh ]) AT_CLEANUP +]) + +TEST_SIMPLE_PROGRAM_PROBES([gob2]) +TEST_SIMPLE_PROGRAM_PROBES([flex])