[PATCH weston v2 0/9] Enable test configuration
Pekka Paalanen
ppaalanen at gmail.com
Tue Apr 7 04:44:59 PDT 2015
On Thu, 2 Apr 2015 19:16:49 -0700
Bryce Harrington <bryce at osg.samsung.com> wrote:
> This enables tests to provide their own .ini files for configuring
> weston, via the recently added --config option. Also included in this
> set is some related cleanup in weston-tests-env.
>
> [Update v2]
> Implemented review comments from pekka:
> * Dropped ~/.config as default location of weston.ini in help text.
> * Look for generated .ini files in build dir, as well as static ini
> files in the source tree (in tests/ subdir)
> * Simplified the .la/.so logic.
> * Added a test case for config loading
> Also did some further fussy cleanup of weston-tests-env.
>
> Bryce Harrington (9):
> compositor: Help text for --config
> tests: Support --config to enable tests to override config defaults
> tests: Keep track of basename
> tests: Cleanup test log filenames
> tests: Refactor weston launching syntax
> tests: Simplify the .la/.so logic
> tests: Prefer bracket form of test command for consistency
> tests: Add a couple minor error checks
> tests: Add test to verify tests' ini files get loaded
>
> Makefile.am | 10 +++++-
> src/compositor.c | 1 +
> tests/config-malformed-test.c | 33 ++++++++++++++++++++
> tests/config-malformed.ini | 15 +++++++++
> tests/weston-tests-env | 71 +++++++++++++++++++++----------------------
> 5 files changed, 93 insertions(+), 37 deletions(-)
> create mode 100644 tests/config-malformed-test.c
> create mode 100644 tests/config-malformed.ini
>
Hi,
I cherry-picked and pushed patches 1, 3, 4 and 7. Patch 3 I had to
rebase a bit, because I didn't pick patch 2 yet.
04f8a9b..b9ec2be master -> master
Patch 8 looks good, but the unrelated changes in it make rebasing it
inconvenient - basically a rewrite.
For patch 9 I already sent my comments separately and agree with Marek.
Now, previously I was concerned that these clean-ups (patches 2, 5, 6)
would actually make weston-tests-env harder to read. I still wasn't
sure, so I tried it and rebased my ivi-test-5 branch on top your
complete series:
http://cgit.collabora.com/git/user/pq/weston.git/log/?h=ivi-test-5b
After my rebase, weston-tests-env now looks like this:
--------------------------------------------------
#!/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
OUTLOG="$LOGDIR/${TEST_NAME}-log.txt"
SERVERLOG="$LOGDIR/${TEST_NAME}-serverlog.txt"
rm -f "$SERVERLOG" || exit
client=
BACKEND=${BACKEND:-headless-backend.so}
MODDIR=$abs_builddir/.libs
TEST_MODULE=$MODDIR/${TEST_FILE/.la/.so}
SHELL_PLUGIN=$MODDIR/desktop-shell.so
XWAYLAND_PLUGIN=$MODDIR/xwayland.so
if [[ ${TEST_MODULE} != *.so ]]; then
export WESTON_TEST_CLIENT_PATH=$abs_builddir/$TEST_FILE
client=$($WESTON_TEST_CLIENT_PATH --params)
TEST_MODULE=$MODDIR/weston-test.so
fi
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
if [[ ${TEST_NAME} = ivi-* ]]; then
SHELL_PLUGIN=$MODDIR/ivi-shell.so
if [[ "$CONFIG" = "--no-config" ]]; then
CONFIG="--config=$abs_builddir/tests/weston-ivi.ini"
fi
XWAYLAND_PLUGIN=""
fi
if [[ ${TEST_FILE} = ivi-*.la ]]; then
client="$client --ivi-module=$TEST_MODULE"
TEST_MODULE=$MODDIR/weston-test.so
fi
export WESTON_BUILD_DIR=$abs_builddir
$WESTON \
--shell=$SHELL_PLUGIN \
--socket=test-${TEST_NAME} \
--modules=$TEST_MODULE,$XWAYLAND_PLUGIN \
--backend=$MODDIR/$BACKEND \
--log="$SERVERLOG" \
$CONFIG \
$client \
&> "$OUTLOG"
--------------------------------------------------
Is this what you meant?
Thanks,
pq
More information about the wayland-devel
mailing list