diff --git a/tools/SmokeTesting/run_tests.zsh b/tools/SmokeTesting/run_tests.zsh index 2b90016d33..2b220bb882 100755 --- a/tools/SmokeTesting/run_tests.zsh +++ b/tools/SmokeTesting/run_tests.zsh @@ -12,7 +12,8 @@ client_map=() for client in "${clients[@]}"; do echo "Starting test for $client" - ./install/smoke_test "$client" > "$log_dir/asst_${client}.log" 2>&1 & + lldb -o run -o 'bt all' -o kill -o quit \ + -- ./install/smoke_test "$client" > "$log_dir/asst_${client}.log" 2>&1 & pids+=($!) client_map+=("$client") done @@ -21,7 +22,8 @@ for i in {0..$(( ${#pids} - 1 ))}; do pid=${pids[$i]} client=${client_map[$i]} - if ! wait $pid; then + wait $pid + if [[ -n "$client" ]] && ! grep 'exited with status = 0' "$log_dir/asst_${client}.log"; then error_clients+=("$client") fi done