diff options
author | Lars Schneider <larsxschneider@gmail.com> | 2015-11-19 09:58:10 +0100 |
---|---|---|
committer | Jeff King <peff@peff.net> | 2015-11-20 08:02:06 -0500 |
commit | dfe90e8b528be4d9668b1bdc6329f8227cbf307a (patch) | |
tree | 988c31df81e859f216302cca2c0e7d401e042cff /t | |
parent | git-p4: add p4d timeout in tests (diff) | |
download | tgif-dfe90e8b528be4d9668b1bdc6329f8227cbf307a.tar.xz |
git-p4: add trap to kill p4d on test exit
Sometimes the "prove" test runner hangs on test exit because p4d is
still running. Add a trap to always kill "p4d" on test exit.
You can reproduce the problem by commenting "P4D_TIMEOUT" in
"lib-git-p4.sh" and running "prove ./t9800-git-p4-basic.sh".
Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
Signed-off-by: Jeff King <peff@peff.net>
Diffstat (limited to 't')
-rw-r--r-- | t/lib-git-p4.sh | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/t/lib-git-p4.sh b/t/lib-git-p4.sh index acd5578eb5..f9ae1d780d 100644 --- a/t/lib-git-p4.sh +++ b/t/lib-git-p4.sh @@ -74,6 +74,15 @@ cli="$TRASH_DIRECTORY/cli" git="$TRASH_DIRECTORY/git" pidfile="$TRASH_DIRECTORY/p4d.pid" +# Sometimes "prove" seems to hang on exit because p4d is still running +cleanup() { + if test -f "$pidfile" + then + kill -9 $(cat "$pidfile") 2>/dev/null && exit 255 + fi +} +trap cleanup EXIT + # git p4 submit generates a temp file, which will # not get cleaned up if the submission fails. Don't # clutter up /tmp on the test machine. |