test(api): add temporary pocketbase harness for api tests

`pnpm test:api` starts an isolated PocketBase with project migrations and
hooks in a temp dir, provides SDK client helpers and cleans up after the run,
on failure and on SIGINT/SIGTERM. The superuser is generated per instance.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EvmtStx737hu8gXe15e55W
This commit is contained in:
kamask
2026-10-26 17:40:36 +03:00
co-authored by Claude Opus 5.5
parent b7b32a0457
commit 5d5b2af318
9 changed files with 413 additions and 12 deletions
@@ -0,0 +1,6 @@
// Starts PocketBase and holds it until the process gets a signal; used to test cleanup on Ctrl+C.
import { startPocketBase } from '../pocketbase-server.ts';
const { url, dataDir } = await startPocketBase();
console.log(JSON.stringify({ url, dataDir }));
setInterval(() => undefined, 1 << 30);