21 lines
744 B
Bash
Executable File
21 lines
744 B
Bash
Executable File
#!/bin/sh
|
|
# Runs MiniABS's API/JSON/progress code on the desktop JVM against mock_abs.py.
|
|
set -e
|
|
cd "$(dirname "$0")/.."
|
|
OUT=build/test
|
|
JSON_JAR=/usr/share/java/com.android.json.jar
|
|
rm -rf "$OUT" && mkdir -p "$OUT"
|
|
S=src/com/miniabs
|
|
javac -nowarn -encoding UTF-8 -cp "$JSON_JAR" -d "$OUT" $(find test/shim -name '*.java') \
|
|
$S/Json.java $S/Prefs.java $S/Episode.java $S/Util.java $S/Api.java $S/App.java test/com/miniabs/ApiTest.java
|
|
|
|
for mode in current legacy; do
|
|
PORT=$((18000 + $(od -An -N2 -tu2 /dev/urandom | tr -d ' ') % 1000))
|
|
python3 test/mock_abs.py $PORT $mode &
|
|
PID=$!
|
|
sleep 1
|
|
echo "=== $mode server"
|
|
java -cp "$OUT:$JSON_JAR" com.miniabs.ApiTest $PORT $mode || { kill $PID; exit 1; }
|
|
kill $PID
|
|
done
|