summaryrefslogtreecommitdiff
path: root/tests/weston-tests-env
blob: 4a352ff0d519f5c0b4e77379d3fc7b3a873d7aa6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#!/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