test: Let Autoconf generate env vars for tests

This simplifies the setup script a lot, and also makes it easier to
run tests independently.

Signed-off-by: Jacques de Laval <jacques@de-laval.se>
This commit is contained in:
Jacques de Laval
2021-02-25 17:37:24 +01:00
parent cde580ffce
commit 48b732e53d
7 changed files with 17 additions and 17 deletions
+3
View File
@@ -12,6 +12,7 @@ AC_CONFIG_FILES([Makefile
doc/Makefile
plugins/Makefile
src/Makefile
test/test.env
test/Makefile])
# Older versions of autoconf (<2.58) do not have AC_CONFIG_MACRO_DIR()
@@ -101,10 +102,12 @@ AC_ARG_WITH(heading,
AC_ARG_WITH(config,
AS_HELP_STRING([--with-config=CONFIG], [Finit bootstrap config file, default /etc/finit.conf]),
[conf=$withval], [conf=$sysconfdir/finit.conf])
AC_SUBST(FINIT_CONF, $conf)
AC_ARG_WITH(rcsd,
AS_HELP_STRING([--with-rcsd=DIR], [Finit rcS.d/ directory, default /etc/finit.d]),
[rcsd=$withval], [rcsd=$sysconfdir/finit.d])
AC_SUBST(FINIT_RCSD, $rcsd)
AC_ARG_WITH(rc-local,
AS_HELP_STRING([--with-rc-local=FILE], [SysV init /etc/rc.local file, default /etc/rc.local]),
+2
View File
@@ -3,3 +3,5 @@
*.trs
/Makefile
/Makefile.in
/test.env
+4 -4
View File
@@ -1,7 +1,7 @@
EXTRA_DIST = lib.sh testenv_exec.sh testenv_start.sh
EXTRA_DIST += test-root/Makefile test-root/busybox-x86_64.md5
EXTRA_DIST += test-root/bin/chrootsetup.sh
EXTRA_DIST += setup-root.sh teardown-root.sh
EXTRA_DIST += setup-root.sh
EXTRA_DIST += common/service.conf common/service.sh
EXTRA_DIST += checkself.sh
EXTRA_DIST += add-remove-dynamic-service/test.sh
@@ -12,8 +12,6 @@ EXTRA_DIST += start-stop-service-sub-config/test.sh
AM_TESTS_ENVIRONMENT = TESTS_ROOT='$(abs_builddir)/test-root/';
AM_TESTS_ENVIRONMENT += export TESTS_ROOT;
AM_TESTS_ENVIRONMENT += export LD_LIBRARY_PATH;
AM_TESTS_ENVIRONMENT += PREFIX=$(prefix);
AM_TESTS_ENVIRONMENT += export PREFIX;
AM_TESTS_ENVIRONMENT += top_srcdir=$(top_srcdir);
AM_TESTS_ENVIRONMENT += export top_srcdir;
AM_TESTS_ENVIRONMENT += top_builddir=$(top_builddir);
@@ -25,4 +23,6 @@ TESTS += add-remove-dynamic-service/test.sh
TESTS += add-remove-dynamic-service-sub-config/test.sh
TESTS += start-stop-service/test.sh
TESTS += start-stop-service-sub-config/test.sh
TESTS += teardown-root.sh
clean-local:
make -C test-root/ clean
+1 -1
View File
@@ -5,4 +5,4 @@ set -eu
testdir="${srcdir:-$(dirname "$0")}"
# shellcheck disable=SC2046
shellcheck $(find "$testdir" -name '*.sh')
shellcheck $(find "$testdir" -path "$testdir/test-root" -prune -false -o -name '*.sh')
+1 -6
View File
@@ -12,9 +12,4 @@ fi
# shellcheck disable=SC2154
make -C "$top_builddir" DESTDIR="$(pwd)/test-root/" install
FINITBIN="$(pwd)/$top_builddir/src/finit" make -C test-root/ # DESTDIR="$(pwd)/test-root/"
config_h="$top_builddir/config.h"
echo "export TESTENV_PATH=/bin:/sbin:$PREFIX/sbin:$PREFIX/bin" > test.env
echo "export FINIT_CONF=$(grep FINIT_CONF "$config_h" | cut -d' ' -f3 | cut -d'"' -f2)" >> test.env
echo "export FINIT_RCSD=$(grep FINIT_RCSD "$config_h" | cut -d' ' -f3 | cut -d'"' -f2)" >> test.env
FINITBIN="$(pwd)/$top_builddir/src/finit" make -C test-root/
-6
View File
@@ -1,6 +0,0 @@
#!/bin/sh
set -eu
make -C test-root/ clean
rm -f test.env
+6
View File
@@ -0,0 +1,6 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
export TESTENV_PATH=/bin:/sbin:"@bindir@":"@sbindir@"
export FINIT_CONF="@FINIT_CONF@"
export FINIT_RCSD="@FINIT_RCSD@"