run_tests.sh 971 B

1234567891011121314151617181920212223242526272829303132
  1. #!/bin/sh
  2. # m2SQLITE test runner - builds lib helper then each tests/*.mod with gm2.
  3. set -e
  4. CDIR=$(dirname "$0")
  5. ROOT=$(cd "$CDIR/.." && pwd)
  6. BIN="$ROOT/build/tests"
  7. OBJ="$ROOT/build/objs"
  8. GM2="${GM2:-gm2}"
  9. mkdir -p "$BIN" "$OBJ"
  10. if command -v pkg-config >/dev/null 2>&1 && pkg-config --libs sqlite3 >/dev/null 2>&1; then
  11. SQLITELIBS="$(pkg-config --libs sqlite3)"
  12. elif [ -f /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 ]; then
  13. SQLITELIBS="/usr/lib/x86_64-linux-gnu/libsqlite3.so.0"
  14. else
  15. SQLITELIBS="-lsqlite3"
  16. fi
  17. # shellcheck disable=SC2086
  18. $GM2 -I"$ROOT/src" -I"$ROOT/lib" $GM2FLAGS -c "$ROOT/lib/SQLiteUtils.mod" -o "$OBJ/SQLiteUtils.o"
  19. pass=0; fail=0
  20. for t in test_version test_open test_exec test_prepare; do
  21. echo "== $t =="
  22. # shellcheck disable=SC2086
  23. $GM2 -I"$ROOT/src" -I"$ROOT/lib" $GM2FLAGS "$ROOT/tests/$t.mod" \
  24. "$OBJ/SQLiteUtils.o" \
  25. -o "$BIN/$t" $SQLITELIBS
  26. "$BIN/$t"
  27. pass=$((pass+1))
  28. done
  29. echo "OK: $pass passed, $fail failed"