tests: write logs to files
authorPekka Paalanen <ppaalanen@gmail.com>
Wed, 12 Dec 2012 12:26:38 +0000 (14:26 +0200)
committerKristian Høgsberg <krh@bitplanet.net>
Wed, 12 Dec 2012 15:38:38 +0000 (10:38 -0500)
This cleans up the 'make check' output considerably. When all goes well,
you will only see the "PASS" line for each of $TESTS.

Weston logs into a separate file than stdout and stderr, so server logs
end up in one file per test, and other output to another file per test.

'make distclean' does not remove the tests/logs/ directory.

Also changes the weston-tests-env interpreter to bash, since I think &>
and ${1/.la/.so} might be bashisms.

tests/.gitignore
tests/weston-tests-env

index 4c6b430..166a6d4 100644 (file)
@@ -1,3 +1,4 @@
+logs
 matrix-test
 setbacklight
 test-client
index 1f8281f..9a0e632 100755 (executable)
@@ -1,12 +1,24 @@
-#!/bin/sh
+#!/bin/bash
 
 WESTON=$abs_builddir/../src/weston
+LOGDIR=$abs_builddir/logs
+
+mkdir -p "$LOGDIR"
+
+SERVERLOG="$LOGDIR/$1-serverlog.txt"
+OUTLOG="$LOGDIR/$1-log.txt"
+
+rm -f "$SERVERLOG"
 
 case $1 in
        *.la|*.so)
-               $WESTON --modules=$abs_builddir/.libs/${1/.la/.so}
+               $WESTON --modules=$abs_builddir/.libs/${1/.la/.so} \
+                       --log="$SERVERLOG" \
+                       &> "$OUTLOG"
                ;;
        *)
                WESTON_TEST_CLIENT_PATH=$abs_builddir/$1 $WESTON \
-                       --modules=$abs_builddir/.libs/weston-test.so
+                       --log="$SERVERLOG" \
+                       --modules=$abs_builddir/.libs/weston-test.so \
+                       &> "$OUTLOG"
 esac