jsoncpp: fix run-ptest with busybox sed

run-ptest piped ctest output through 'sed -u', which busybox sed does
not support, so the pipeline produced no output and the ptest image
reported "ptests which had no test results: ['jsoncpp']".

Drop sed and classify ctest result lines in awk directly. This also
maps Timeout/Exception/Not Run results to FAIL; previously they were
printed as e.g. "Exception:: <name>" and ignored by the ptest parser.

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
Khem Raj
2026-09-12 16:52:16 -07:00
parent cc599d50f8
commit fcface3aaa
@@ -1,4 +1,11 @@
#!/bin/sh
cd src
ctest --force-new-ctest-process | sed -u 's/\*\*\*/ /g' | awk '/Test +#/{gsub(/Passed/,"PASS"); gsub(/Failed/,"FAIL"); gsub(/Skipped/,"SKIP"); print $6": "$4; fflush();}'
# ctest result lines look like: "1/3 Test #1: jsoncpp_test ..... Passed 0.01 sec"
# anything other than Passed/Skipped/Disabled (Failed, Timeout, Exception, Not Run) is a FAIL
ctest --force-new-ctest-process | awk '/Test +#[0-9]+:/ {
if ($0 ~ /Passed/) res = "PASS"
else if ($0 ~ /Skipped|Disabled/) res = "SKIP"
else res = "FAIL"
print res ": " $4; fflush()
}'