20 lines
672 B
Bash
20 lines
672 B
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
# Boot a clean test DB then start OxiCloud (passed as arguments).
|
||
|
|
# Used by playwright.config.ts as the webServer command so that both
|
||
|
|
# `npm test` and `npx playwright test` always start from an empty database.
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
REPO_ROOT="$(cd "$(dirname "$0")/../.." && pwd)"
|
||
|
|
OXICLOUD_STORAGE_PATH="$REPO_ROOT/tests/e2e/storage"
|
||
|
|
|
||
|
|
# ensure storage is empty before starting
|
||
|
|
echo "Wipe $OXICLOUD_STORAGE_PATH to ensure clean startup"
|
||
|
|
rm -rf "$OXICLOUD_STORAGE_PATH"
|
||
|
|
mkdir -p "$OXICLOUD_STORAGE_PATH"
|
||
|
|
|
||
|
|
# Spawn database
|
||
|
|
bash "$REPO_ROOT/tests/common/spawn-db.sh"
|
||
|
|
|
||
|
|
# Replace the shell with the server process so Playwright's PID tracking works.
|
||
|
|
exec "$@"
|