Browse Source

tests: Allow running the testsuite on already installed binary / libraries

Currently the test runner script always expects to be run from within the
tests/ subdirectory of a dtc source tree: it looks for dtc and other
binaries in the parent of the current directory and for the libfdt shared
library in ../libfdt.

That works great with make check and for testing a build you've just made.
However, sometimes it's useful to test a dtc & libfdt which have already
been installed on the system, or which for whatever reason are located
somewhere else.

This patch allows the test runner script to do this when TEST_BINDIR and/or
TEST_LIBDIR environment variables are set.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
main
David Gibson 5 years ago
parent
commit
1f9a417508
  1. 5
      tests/run_tests.sh
  2. 14
      tests/testutils.sh

5
tests/run_tests.sh

@ -52,7 +52,10 @@ if [ -z "$STATSZ" ]; then
fi fi


# Help things find the libfdt shared object # Help things find the libfdt shared object
export LD_LIBRARY_PATH=../libfdt if [ -z "$TEST_LIBDIR" ]; then
TEST_LIBDIR=../libfdt
fi
export LD_LIBRARY_PATH="$TEST_LIBDIR"


export QUIET_TEST=1 export QUIET_TEST=1
STOP_ON_FAIL=0 STOP_ON_FAIL=0

14
tests/testutils.sh

@ -18,11 +18,15 @@ FAIL_IF_SIGNAL () {
fi fi
} }


DTC=../dtc if [ -z "$TEST_BINDIR" ]; then
DTGET=../fdtget TEST_BINDIR=..
DTPUT=../fdtput fi
FDTDUMP=../fdtdump
FDTOVERLAY=../fdtoverlay DTC=${TEST_BINDIR}/dtc
DTGET=${TEST_BINDIR}/fdtget
DTPUT=${TEST_BINDIR}/fdtput
FDTDUMP=${TEST_BINDIR}/fdtdump
FDTOVERLAY=${TEST_BINDIR}/fdtoverlay


verbose_run () { verbose_run () {
if [ -z "$QUIET_TEST" ]; then if [ -z "$QUIET_TEST" ]; then

Loading…
Cancel
Save