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])
# 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])