weston/tests/weston-tests-env
Daniel Stone 78a42116ae tests: Reshuffle IVI layout tests
Rename the IVI tests to be more consistent with the others, and invert
the naming of plugin/client to make it slightly more clear what's going
to happen. Handle the renaming by using wet_get_binary_path to rewrite
the local binaries.

As a side-effect, weston.ini ivi-shell-user-interface no longer needs to
be given as an absolute path.

Signed-off-by: Daniel Stone <daniels@collabora.com>

v2:

Call ivi-layout.ivi as ivi-layout-test-client.ivi to keep the same name
in both the file and the lookup, so that the module map does not need to
change the name.

Update code comments to reflect the new names.

Rename ivi_layout-test-plugin.c to ivi-layout-test-plugin.c.

Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Emre Ucan <eucan@de.adit-jv.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2018-06-20 16:10:12 +03:00

114 lines
3.1 KiB
Bash
Executable File

#!/bin/bash
TEST_FILE=${1##*/}
TEST_NAME=${TEST_FILE%.*}
if [ -z "$TEST_NAME" ]; then
echo "usage: $(basename $0) <test name>"
exit 1;
fi
WESTON=$abs_builddir/weston
LOGDIR=$abs_builddir/logs
mkdir -p "$LOGDIR" || exit
SERVERLOG="$LOGDIR/${TEST_NAME}-serverlog.txt"
OUTLOG="$LOGDIR/${TEST_NAME}-log.txt"
rm -f "$SERVERLOG" || exit
BACKEND=${BACKEND:-headless-backend.so}
MODDIR=$abs_builddir/.libs
SHELL_PLUGIN=$MODDIR/desktop-shell.so
TEST_PLUGIN=$MODDIR/weston-test.so
WESTON_MODULE_MAP=
for mod in cms-colord cms-static desktop-shell drm-backend fbdev-backend \
fullscreen-shell gl-renderer headless-backend hmi-controller \
ivi-shell rdp-compositor screen-share wayland-backend \
weston-test-desktop-shell x11-backend xwayland; do
WESTON_MODULE_MAP="${WESTON_MODULE_MAP}${mod}.so=${abs_builddir}/.libs/${mod}.so;"
done
for exe in weston-desktop-shell weston-keyboard weston-screenshooter \
weston-simple-im ivi-layout-test-client.ivi; do \
WESTON_MODULE_MAP="${WESTON_MODULE_MAP}${exe}=${abs_builddir}/${exe};"
done
CONFIG_FILE="${TEST_NAME}.ini"
if [ -e "${abs_builddir}/${CONFIG_FILE}" ]; then
CONFIG="--config=${abs_builddir}/${CONFIG_FILE}"
elif [ -e "${abs_top_srcdir}/tests/${CONFIG_FILE}" ]; then
CONFIG="--config=${abs_top_srcdir}/tests/${CONFIG_FILE}"
else
CONFIG="--no-config"
fi
case $TEST_FILE in
ivi-*.la|ivi-*.so)
SHELL_PLUGIN=$MODDIR/ivi-shell.so
set -x
WESTON_MODULE_MAP="${WESTON_MODULE_MAP}" \
WESTON_DATA_DIR=$abs_top_srcdir/data \
WESTON_TEST_REFERENCE_PATH=$abs_top_srcdir/tests/reference \
$WESTON --backend=$MODDIR/$BACKEND \
--no-config \
--shell=$SHELL_PLUGIN \
--socket=test-${TEST_NAME} \
--modules=$TEST_PLUGIN,$MODDIR/${TEST_FILE/.la/.so}\
--log="$SERVERLOG" \
&> "$OUTLOG"
;;
*.la|*.so)
set -x
WESTON_MODULE_MAP="${WESTON_MODULE_MAP}" \
WESTON_DATA_DIR=$abs_top_srcdir/data \
WESTON_TEST_REFERENCE_PATH=$abs_top_srcdir/tests/reference \
$WESTON --backend=$MODDIR/$BACKEND \
${CONFIG} \
--shell=$SHELL_PLUGIN \
--socket=test-${TEST_NAME} \
--xwayland \
--modules=$MODDIR/${TEST_FILE/.la/.so} \
--log="$SERVERLOG" \
&> "$OUTLOG"
;;
ivi-*.weston)
SHELL_PLUGIN=$MODDIR/ivi-shell.so
set -x
WESTON_MODULE_MAP="${WESTON_MODULE_MAP}" \
WESTON_DATA_DIR=$abs_top_srcdir/data \
WESTON_TEST_REFERENCE_PATH=$abs_top_srcdir/tests/reference \
WESTON_TEST_CLIENT_PATH=$abs_builddir/$TEST_FILE \
$WESTON --backend=$MODDIR/$BACKEND \
--no-config \
--shell=$SHELL_PLUGIN \
--socket=test-${TEST_NAME} \
--modules=$TEST_PLUGIN \
--log="$SERVERLOG" \
$($abs_builddir/$TESTNAME --params) \
&> "$OUTLOG"
;;
*)
set -x
WESTON_MODULE_MAP="${WESTON_MODULE_MAP}" \
WESTON_DATA_DIR=$abs_top_srcdir/data \
WESTON_TEST_REFERENCE_PATH=$abs_top_srcdir/tests/reference \
WESTON_TEST_CLIENT_PATH=$abs_builddir/$TEST_FILE \
$WESTON --backend=$MODDIR/$BACKEND \
${CONFIG} \
--shell=$SHELL_PLUGIN \
--socket=test-${TEST_NAME} \
--xwayland \
--modules=$TEST_PLUGIN \
--log="$SERVERLOG" \
$($abs_builddir/$TEST_FILE --params) \
&> "$OUTLOG"
esac