diff options
Diffstat (limited to 'lib9p/tests/runtest')
-rwxr-xr-x | lib9p/tests/runtest | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib9p/tests/runtest b/lib9p/tests/runtest index 379ea6d..fb66a43 100755 --- a/lib9p/tests/runtest +++ b/lib9p/tests/runtest @@ -7,8 +7,10 @@ set -euE -o pipefail set -x +build_aux=$(realpath --canonicalize-missing -- "${BASH_SOURCE[0]}/../../../build-aux") + port=$(python -c 'import socket; s=socket.socket(); s.bind(("", 0)); print(s.getsockname()[1]); s.close()') -valgrind --error-exitcode=2 ./tests/test_server/test_server "$port" & +"${build_aux}/valgrind" ./tests/test_server/test_server "$port" & server_pid=$! # shellcheck disable=SC2064 trap "kill $server_pid || true; wait $server_pid || true" EXIT @@ -22,7 +24,7 @@ expect_lines() ( diff -u <(printf '%s\n' "$@") <(printf '%s\n' "$out") ) -while [[ -d /proc/$server_pid && "$(readlink /proc/$server_pid/fd/4 2>/dev/null)" != socket:* ]]; do sleep 0.1; done +while [[ -d /proc/$server_pid ]] && ! (readlink /proc/$server_pid/fd/* 2>/dev/null | grep -q ^socket:); do sleep 0.1; done out=$("${client[@]}" ls -l '') expect_lines \ |