diff --git a/tests/web/api.tasks.complete.reaction.test.ts b/tests/web/api.tasks.complete.reaction.test.ts index bd1120b..39e5d54 100644 --- a/tests/web/api.tasks.complete.reaction.test.ts +++ b/tests/web/api.tasks.complete.reaction.test.ts @@ -1,7 +1,6 @@ import { beforeEach, afterEach, describe, expect, it } from 'bun:test'; import { createTempDb } from './helpers/db'; -import { closeDb } from '../../apps/web/src/lib/server/db.ts'; -import { POST as completeHandler } from '../../apps/web/src/routes/api/tasks/[id]/complete/+server.ts'; +// Los imports del handler y closeDb se hacen dinámicos dentro de cada test/teardown function toIsoSql(d: Date): string { return d.toISOString().replace('T', ' ').replace('Z', ''); @@ -35,9 +34,12 @@ describe('Web API - completar tarea encola reacción ✅', () => { db.prepare(`INSERT OR REPLACE INTO group_members (group_id, user_id, is_admin, is_active) VALUES (?, ?, 0, 1)`).run(GROUP_ID, USER); }); - afterEach(() => { + afterEach(async () => { // Cerrar la conexión singleton de la web antes de borrar el archivo - try { closeDb(); } catch {} + try { + const { closeDb } = await import('../../apps/web/src/lib/server/db.ts'); + closeDb(); + } catch {} if (cleanup) cleanup(); // Limpiar env relevantes delete process.env.DB_PATH; @@ -68,6 +70,10 @@ describe('Web API - completar tarea encola reacción ✅', () => { params: { id: String(taskId) }, request: new Request('http://localhost', { method: 'POST' }) }; + const { POST: completeHandler } = await import('../../apps/web/src/routes/api/tasks/[id]/complete/+server.ts'); + const { POST: completeHandler } = await import('../../apps/web/src/routes/api/tasks/[id]/complete/+server.ts'); + const { POST: completeHandler } = await import('../../apps/web/src/routes/api/tasks/[id]/complete/+server.ts'); + const { POST: completeHandler } = await import('../../apps/web/src/routes/api/tasks/[id]/complete/+server.ts'); const res = await completeHandler(event); expect(res.status).toBe(200); const payload = await res.json();