migration from private to rsa
[external/dbus-glib.git] / test / interfaces / run-test.sh
1 #! /bin/sh
2
3 SCRIPTNAME=$0
4 MODE=$1
5
6 ## so the tests can complain if you fail to use the script to launch them
7 DBUS_TEST_GLIB_RUN_TEST_SCRIPT=1
8 export DBUS_TEST_GLIB_RUN_TEST_SCRIPT
9 srcdir=`dirname "$0"`
10 DBUS_TOP_SRCDIR="$srcdir/../.."
11 export DBUS_TOP_SRCDIR
12 # Rerun ourselves with tmp session bus if we're not already
13 if test -z "$DBUS_TEST_GLIB_IN_RUN_TEST"; then
14   DBUS_TEST_GLIB_IN_RUN_TEST=1
15   export DBUS_TEST_GLIB_IN_RUN_TEST
16   exec $DBUS_TOP_SRCDIR/tools/run-with-tmp-session-bus.sh $SCRIPTNAME $MODE
17 fi  
18
19 for x in annotated-node nested-annotation; do
20   if ! test -f $srcdir/invalid-$x.xml; then
21     echo "invalid-$x.xml missing">&2
22     exit 1
23   fi
24
25   if $DBUS_BINDING_TOOL --prefix=test_invalid --mode=glib-server \
26       --output=invalid-glue.h $srcdir/invalid-$x.xml ||
27     $DBUS_BINDING_TOOL --prefix=test_invalid --mode=glib-client \
28       --output=invalid-bindings.h $srcdir/invalid-$x.xml; then
29     echo "invalid-$x.xml should not have been processed successfully!">&2
30     exit 1
31   else
32     echo "invalid-$x.xml failed, as expected">&2
33   fi
34 done
35
36 echo "running test-client"
37 ${DBUS_TOP_BUILDDIR}/libtool --mode=execute $DEBUG $DBUS_TOP_BUILDDIR/test/interfaces/test-client || die "test-client failed"