mirror of
https://github.com/johannesjo/super-productivity.git
synced 2026-01-22 18:30:09 +00:00
feat(e2e): enable SuperSync tests in e2e:docker:all script
Modify e2e:docker:all to run all 360+ E2E tests including @supersync tests. - Start all required services (app, webdav, db, supersync) - Add wait-for-supersync.sh for SuperSync health check - Execute tests in two phases: - Phase 1: Non-supersync tests (default workers) - Phase 2: SuperSync tests (3 workers to avoid server overload) - Both phases run independently; exit code reflects first failure - Previously skipped 131 @supersync tests now included Resolves complete E2E test coverage for all sync providers.
This commit is contained in:
parent
73c1848ba9
commit
3a9d35149d
2 changed files with 21 additions and 1 deletions
|
|
@ -65,7 +65,7 @@
|
|||
"e2e:supersync:down": "docker compose -f docker-compose.yaml -f docker-compose.supersync.yaml down supersync",
|
||||
"e2e:docker": "docker compose -f docker-compose.e2e.yaml up -d app && ./scripts/wait-for-app.sh && E2E_BASE_URL=http://localhost:${APP_PORT:-4242} npm run e2e; docker compose -f docker-compose.e2e.yaml down",
|
||||
"e2e:docker:webdav": "docker compose -f docker-compose.e2e.yaml up -d app webdav && ./scripts/wait-for-app.sh && ./scripts/wait-for-webdav.sh && E2E_BASE_URL=http://localhost:${APP_PORT:-4242} npm run e2e; docker compose -f docker-compose.e2e.yaml down",
|
||||
"e2e:docker:all": "docker compose -f docker-compose.e2e.yaml up -d app webdav && ./scripts/wait-for-app.sh && ./scripts/wait-for-webdav.sh && E2E_BASE_URL=http://localhost:${APP_PORT:-4242} npm run e2e; docker compose -f docker-compose.e2e.yaml down",
|
||||
"e2e:docker:all": "docker compose -f docker-compose.e2e.yaml -f docker-compose.yaml -f docker-compose.supersync.yaml up -d app webdav db supersync && ./scripts/wait-for-app.sh && ./scripts/wait-for-webdav.sh && ./scripts/wait-for-supersync.sh && E2E_BASE_URL=http://localhost:${APP_PORT:-4242} npm run e2e -- --grep-invert @supersync; PHASE1_EXIT=$?; E2E_BASE_URL=http://localhost:${APP_PORT:-4242} npm run e2e -- --grep @supersync --workers=3; PHASE2_EXIT=$?; docker compose -f docker-compose.e2e.yaml -f docker-compose.yaml -f docker-compose.supersync.yaml down; if [ $PHASE1_EXIT -ne 0 ]; then exit $PHASE1_EXIT; fi; exit $PHASE2_EXIT",
|
||||
"electron": "NODE_ENV=PROD electron .",
|
||||
"electron:build": "tsc -p electron/tsconfig.electron.json",
|
||||
"electron:watch": "tsc -p electron/tsconfig.electron.json --watch",
|
||||
|
|
|
|||
20
scripts/wait-for-supersync.sh
Executable file
20
scripts/wait-for-supersync.sh
Executable file
|
|
@ -0,0 +1,20 @@
|
|||
#!/bin/bash
|
||||
# Wait for SuperSync server to be ready at http://localhost:1901
|
||||
# Retries for up to 90 seconds (accounts for PostgreSQL + SuperSync startup)
|
||||
|
||||
echo "Waiting for SuperSync server on http://localhost:1901..."
|
||||
|
||||
MAX_WAIT=90
|
||||
elapsed=0
|
||||
until curl -s http://localhost:1901/health > /dev/null 2>&1; do
|
||||
if [ $elapsed -ge $MAX_WAIT ]; then
|
||||
echo "Timeout: SuperSync server did not start within ${MAX_WAIT}s"
|
||||
echo "--- SuperSync logs ---"
|
||||
docker compose -f docker-compose.yaml -f docker-compose.supersync.yaml logs supersync
|
||||
exit 1
|
||||
fi
|
||||
sleep 1
|
||||
elapsed=$((elapsed + 1))
|
||||
done
|
||||
|
||||
echo "SuperSync server is ready!"
|
||||
Loading…
Add table
Add a link
Reference in a new issue