Skip to content

Commit 77a6ca9

Browse files
committed
fix: improve smoke tests to detect startup failures on all platforms
1 parent 0a5104a commit 77a6ca9

File tree

1 file changed

+32
-4
lines changed

1 file changed

+32
-4
lines changed

.github/workflows/builds.yml

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -134,25 +134,53 @@ jobs:
134134
shell: bash
135135
run: |
136136
set -x
137-
# Find and test examples
137+
failed=false
138138
for exe in SimpleRoom SimpleRpc SimpleDataStream; do
139-
if [[ -x "build/bin/${exe}" ]]; then
140-
build/bin/${exe} --help || true
139+
exe_path="build/bin/${exe}"
140+
if [[ -x "${exe_path}" ]]; then
141+
echo "Testing ${exe}..."
142+
# Capture output to verify program actually runs
143+
output=$("${exe_path}" --help 2>&1) || true
144+
if [[ -z "${output}" ]]; then
145+
echo "ERROR: ${exe} produced no output - may have failed to start"
146+
failed=true
147+
else
148+
echo "${output}"
149+
echo "${exe} ran successfully"
150+
fi
151+
else
152+
echo "ERROR: ${exe_path} not found or not executable"
153+
failed=true
141154
fi
142155
done
156+
if [[ "$failed" == "true" ]]; then exit 1; fi
143157
144158
- name: Smoke test examples (Windows)
145159
if: runner.os == 'Windows'
146160
shell: pwsh
147161
run: |
148162
$examples = @('SimpleRoom', 'SimpleRpc', 'SimpleDataStream')
163+
$failed = $false
149164
foreach ($exe in $examples) {
150165
$exePath = "build/bin/Release/${exe}.exe"
151166
if (Test-Path $exePath) {
152167
Write-Host "Testing ${exe}..."
153-
& $exePath --help
168+
# Capture output to verify program actually runs
169+
$output = & $exePath --help 2>&1
170+
# If there's no output, the program likely failed to start (e.g., missing DLL)
171+
if ([string]::IsNullOrWhiteSpace($output)) {
172+
Write-Host "ERROR: ${exe} produced no output - may have failed to start"
173+
$failed = $true
174+
} else {
175+
Write-Host $output
176+
Write-Host "${exe} ran successfully"
177+
}
178+
} else {
179+
Write-Host "ERROR: ${exePath} not found"
180+
$failed = $true
154181
}
155182
}
183+
if ($failed) { exit 1 }
156184
157185
- name: Upload build artifacts
158186
uses: actions/upload-artifact@v4

0 commit comments

Comments
 (0)