#!/bin/sh
# installed-tests wrapper for dbus. Outputs TAP format because why not

set -e

timeout="timeout 300s"
ret=0
i=0
tmpdir=$(mktemp --directory --tmpdir dbus-run-installed-tests.XXXXXX)

for t in /usr/libexec/dbus-1/installed-tests/dbus/test-*; do
    i=$(( $i + 1 ))
    echo "# $i - $t ..."
    echo "x" > "$tmpdir/result"
    ( set +e; $timeout $t; echo "$?" > "$tmpdir/result" ) 2>&1 | sed 's/^/# /'
    e="$(cat "$tmpdir/result")"
    case "$e" in
        (0)
            echo "ok $i - $t"
            ;;
        (77)
            echo "ok $i # SKIP $t"
            ;;
        (*)
            echo "not ok $i - $t ($e)"
            ret=1
            ;;
    esac
done

rm -rf tmpdir
echo "1..$i"
exit $ret
