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
+11
View File
@@ -0,0 +1,11 @@
import type { TestProject } from 'vitest/node';
import { startPocketBase } from '../support/pocketbase-server';
import '../support/clients';
export default async function setup(project: TestProject) {
const { url, dataDir, superuser, stop } = await startPocketBase();
project.provide('pbUrl', url);
project.provide('pbDataDir', dataDir);
project.provide('pbSuperuser', superuser);
return stop;
}