File size: 921 Bytes
64f7370 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #!/bin/bash
# SpeechKit CI: unit tests + numeric regression + memory stress.
# Usage: ./Scripts/ci.sh [workspace-dir] (workspace = iphone-asr checkout with dist/ + ios_refs/)
set -euo pipefail
cd "$(dirname "$0")/.."
WORKSPACE="${1:-..}"
echo "== unit tests =="
swift test 2>&1 | tail -3
echo "== build release =="
swift build -c release 2>&1 | tail -1
echo "== numeric regression =="
OUT=$(./.build/release/asrkit-cli "$WORKSPACE")
echo "$OUT"
if echo "$OUT" | grep -q FAIL; then
echo "CI FAIL: regression check failed"; exit 1
fi
echo "== memory stress (100 passes) =="
STRESS=$(./.build/release/asrkit-cli "$WORKSPACE" --stress | grep stress)
echo "$STRESS"
START=$(echo "$STRESS" | head -1 | grep -o '[0-9]\+' | tail -1)
END=$(echo "$STRESS" | tail -1 | grep -o '[0-9]\+' | tail -1)
if [ $((END - START)) -gt 50 ]; then
echo "CI FAIL: footprint grew ${START}MB -> ${END}MB"; exit 1
fi
echo "== CI PASS =="
|