#!/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