40 lines
914 B
Bash
Executable File
40 lines
914 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
DEFAULT_TEST_FILE="tests/integration/auth-callback-db.test.ts"
|
|
CLEANUP_SCRIPT="tests/integration/cleanup-auth-callback-records.ts"
|
|
|
|
if [[ "${CHH_DOCKER_GROUP_READY:-0}" != "1" ]]; then
|
|
cd "$ROOT_DIR"
|
|
|
|
cmd="cd $(printf '%q' "$ROOT_DIR") && CHH_DOCKER_GROUP_READY=1 ./tests/run-auth-callback-db-test.sh"
|
|
for arg in "$@"; do
|
|
cmd+=" $(printf '%q' "$arg")"
|
|
done
|
|
|
|
# Run under docker group for docker-compose access.
|
|
exec bash -lc "newgrp docker && $cmd"
|
|
fi
|
|
|
|
cleanup() {
|
|
local exit_code=$?
|
|
cd "$ROOT_DIR"
|
|
|
|
deno run -A "$CLEANUP_SCRIPT" >/dev/null 2>&1 || true
|
|
docker compose down --remove-orphans >/dev/null 2>&1 || true
|
|
|
|
exit "$exit_code"
|
|
}
|
|
trap cleanup EXIT INT TERM
|
|
|
|
cd "$ROOT_DIR"
|
|
|
|
docker compose up -d
|
|
|
|
if [[ $# -eq 0 ]]; then
|
|
deno test -A "$DEFAULT_TEST_FILE"
|
|
else
|
|
deno test -A "$@"
|
|
fi
|