X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=tests%2Fbasic;h=5ba7a250b948affc504378ee09f2dce4ba79d76f;hb=80453e14e8c10071d9025c49b49e9feb3ed0f26c;hp=c85b449506165630049912c5159b711871cd518e;hpb=e4dbd96969a8e844b71a167238bc126d66155c31;p=monkeysphere.git diff --git a/tests/basic b/tests/basic index c85b449..5ba7a25 100755 --- a/tests/basic +++ b/tests/basic @@ -13,6 +13,14 @@ # all subcommands in this script should complete without failure: set -e +# piped commands should return the code of the first non-zero return +set -o pipefail + +## make sure that the right tools are installed to run the test. the +## test has *more* requirements than plain ol' monkeysphere: +which socat || { echo "You must have socat installed to run this test." ; exit 1; } + +## FIXME: other checks? # gpg command for test admin user gpgadmin() { @@ -46,6 +54,7 @@ ssh_test() { # kill the sshd process if it's still running kill "$SSHD_PID" + SSHD_PID= set -e @@ -79,9 +88,16 @@ cleanup() { echo "### removing temp dir..." rm -rf "$TEMPDIR" + if [ "$SSHD_PID" ] ; then + echo "### killing off lingering sshd..." + kill "$SSHD_PID" + fi + wait } +SSHD_PID= + ## setup trap trap failed_cleanup EXIT @@ -113,8 +129,11 @@ export MONKEYSPHERE_LOG_LEVEL=DEBUG export SSHD_CONFIG="$TEMPDIR"/sshd_config export SOCKET="$TEMPDIR"/ssh-socket -export SSHD_PID= +# Make sure $DISPLAY is set to convince ssh and monkeysphere to fall +# back on $SSH_ASKPASS. Make sure it's not set to the current actual +# $DISPLAY (if one exists) because this test suite should not be doing +# *anything* with any running X11 session. export DISPLAY=monkeys ### CONFIGURE ENVIRONMENTS