Adding all the tests and fixes to the passengers app

This commit is contained in:
Muluhabt
2026-07-21 13:45:49 +03:00
parent 8ce2d2d874
commit f2ae9c883f
3316 changed files with 15548 additions and 37 deletions

40
e2e-ui/run.sh Executable file
View File

@@ -0,0 +1,40 @@
#!/usr/bin/env bash
# One-command UI E2E: infra → build → boot app tier (via Playwright webServer) → seed+auth → run →
# open the HTML report. Idempotent; reuses an already-running stack. Any args pass through to
# playwright (e.g. `bash e2e-ui/run.sh --project=portal ua1`).
set -euo pipefail
HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT="$HERE/.."
API="$ROOT/apps/edr-passenger-api"
export GITHUB_PACKAGE_TOKEN="${GITHUB_PACKAGE_TOKEN:-dummy}"
echo "==> 1/4 Infra: Postgres (5544) + RabbitMQ (5672) + migrations"
bash "$ROOT/e2e/prepare.sh"
echo " waiting for RabbitMQ healthy"
for _ in $(seq 1 30); do
s="$(docker inspect --format '{{.State.Health.Status}}' edr-passenger-e2e-rmq 2>/dev/null || echo none)"
[ "$s" = "healthy" ] && break; sleep 2
done
echo "==> 2/4 Build shared types (@edr/types dist — nest build needs it)"
pnpm --filter @edr/types build >/dev/null
echo "==> 3/4 Ensure passenger-api dev env (test DB 5544, port 4000, brokers/Fayda off, seeding on)"
if [ ! -f "$API/.env" ]; then
sed -e 's/^PORT=.*/PORT=4000/' \
-e 's/^SEED_EDR_PASSENGER_ORG=.*/SEED_EDR_PASSENGER_ORG=true/' \
-e 's/^SEED_PASSENGER_STAFF=.*/SEED_PASSENGER_STAFF=true/' \
"$API/.env.test" > "$API/.env"
echo " created $API/.env"
fi
echo "==> 4/4 Playwright (boots api/portal/backoffice if not already up, seeds + mints auth, runs)"
npx playwright test -c "$HERE/playwright.config.ts" "$@" || TEST_EXIT=$?
REPORT="$ROOT/e2e-ui-report/index.html"
if [ -f "$REPORT" ]; then
echo "==> Report: $REPORT"
open "$REPORT" 2>/dev/null || true
fi
exit "${TEST_EXIT:-0}"