Files

23 lines
828 B
Bash
Executable File

#!/usr/bin/env bash
# Regenerates every file under output/.
#
# ./scripts/run-all.sh
#
# Needs a JDK 25, Maven 3.9 and redis-server and redis-cli (7.x) on the PATH. The tests start
# throwaway redis-server processes on free ports and stop them when the JVM exits; they never touch
# a Redis on 6379. Transcripts 00-07 come out of the test suite, so each number in them is an
# assertion that fails the build if it stops being true. Transcript 08 is two real JVMs and curl.
set -euo pipefail
cd "$(dirname "$0")/.."
mkdir -p output
echo "== test suite (transcripts 00-07)"
mvn -B test | tee /tmp/rate-limit-mvn.log | grep -E '^\[(INFO|WARNING|ERROR)\] Tests run:' | sed 's/^\[[A-Z]*\] //' > output/00-test-summary.txt
echo "== two real JVMs (transcript 08)"
./scripts/two-jvms.sh >/dev/null
echo
echo "output:"
ls -1 output