feat(tests): add test-env.sh, gitignore updates, package.json scripts
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@@ -23,3 +23,7 @@ release/
|
||||
*.db-journal
|
||||
*.db-shm
|
||||
*.db-wal
|
||||
|
||||
# Test pipeline
|
||||
data/test/
|
||||
frontend/test-results/
|
||||
|
||||
@@ -7,9 +7,12 @@
|
||||
"build": "vite build",
|
||||
"preview": "vite preview",
|
||||
"check": "svelte-check --tsconfig ./tsconfig.json",
|
||||
"check:watch": "svelte-check --tsconfig ./tsconfig.json --watch"
|
||||
"check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
|
||||
"test:e2e": "playwright test",
|
||||
"test:e2e:ui": "playwright test --ui"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@playwright/test": "^1.59.1",
|
||||
"@sveltejs/adapter-static": "latest",
|
||||
"@sveltejs/kit": "latest",
|
||||
"@sveltejs/vite-plugin-svelte": "latest",
|
||||
|
||||
1
frontend/tests/.auth/.gitignore
vendored
Normal file
1
frontend/tests/.auth/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
*
|
||||
32
scripts/test-env.sh
Executable file
32
scripts/test-env.sh
Executable file
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
TT_WORKTREE_ROOT="$(git rev-parse --show-toplevel)"
|
||||
|
||||
# Deterministic port: 3100 + (sha1 of path) % 100
|
||||
_hash=$(echo -n "$TT_WORKTREE_ROOT" | sha1sum | cut -c1-8)
|
||||
_dec=$(( 16#$_hash ))
|
||||
TT_TEST_PORT=$(( 3100 + _dec % 100 ))
|
||||
|
||||
# TT_TEST_PORT_RANDOM=1 → bind :0; backend writes actual port to data/test/.port
|
||||
if [ "${TT_TEST_PORT_RANDOM:-0}" = "1" ]; then
|
||||
TT_TEST_PORT=0
|
||||
fi
|
||||
|
||||
TT_TEST_DB="${TT_WORKTREE_ROOT}/data/test/attendance.db"
|
||||
TT_TEST_MODE=1
|
||||
TT_BASE_URL="http://127.0.0.1:${TT_TEST_PORT}"
|
||||
|
||||
mkdir -p "${TT_WORKTREE_ROOT}/data/test"
|
||||
|
||||
export TT_WORKTREE_ROOT TT_TEST_PORT TT_TEST_DB TT_TEST_MODE TT_BASE_URL
|
||||
|
||||
cat > "${TT_WORKTREE_ROOT}/data/test/.env" <<EOF
|
||||
TT_WORKTREE_ROOT=${TT_WORKTREE_ROOT}
|
||||
TT_TEST_PORT=${TT_TEST_PORT}
|
||||
TT_TEST_DB=${TT_TEST_DB}
|
||||
TT_TEST_MODE=${TT_TEST_MODE}
|
||||
TT_BASE_URL=${TT_BASE_URL}
|
||||
EOF
|
||||
|
||||
echo "[test-env] TT_TEST_PORT=${TT_TEST_PORT} TT_TEST_DB=${TT_TEST_DB}"
|
||||
Reference in New Issue
Block a user