X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=tests%2Fbasic;h=5ba7a250b948affc504378ee09f2dce4ba79d76f;hb=a4983d24c8e79729deaa02602b742eace6d09f86;hp=259a7f0c192067326de061eb66579fb60d195e55;hpb=8d609df9ec376905dbed377c8b03a49ceca5efc5;p=monkeysphere.git diff --git a/tests/basic b/tests/basic index 259a7f0..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,12 @@ 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