Files

20 lines
597 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
MODULE="${1:?usage: scripts/smoke-qemu-wasm.sh <qemu-system-riscv32.js>}"
OUTPUT="$(mktemp)"
trap 'rm -f "$OUTPUT"' EXIT
timeout 15 node "$(dirname "$0")/smoke-qemu-wasm.mjs" "$MODULE" >"$OUTPUT" 2>&1 || status=$?
status="${status:-0}"
if [ "$status" -ne 0 ] && [ "$status" -ne 1 ] && [ "$status" -ne 124 ]; then
cat "$OUTPUT" >&2
exit "$status"
fi
grep -F 'xteink xteink X3/X4 (ESP32-C3); variant=x3|x4' "$OUTPUT" >/dev/null
if grep -Eq 'RuntimeError|table index is out of bounds' "$OUTPUT"; then
cat "$OUTPUT" >&2
exit 1
fi