fix: aislar pruebas restaurando dbInstance y add de ResponseQueue

Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
pull/1/head
borja 2 months ago
parent cbb6f4d769
commit 49b21c6ead

@ -7,6 +7,7 @@ import { initializeDatabase, ensureUserExists } from '../../src/db';
// Simulated ResponseQueue for testing (in-memory array) // Simulated ResponseQueue for testing (in-memory array)
let simulatedQueue: any[] = []; let simulatedQueue: any[] = [];
let originalAdd: any;
class SimulatedResponseQueue { class SimulatedResponseQueue {
static async add(responses: any[]) { static async add(responses: any[]) {
@ -30,9 +31,12 @@ beforeAll(() => {
testDb = new Database(':memory:'); testDb = new Database(':memory:');
// Initialize schema // Initialize schema
initializeDatabase(testDb); initializeDatabase(testDb);
// Guardar implementación original de ResponseQueue.add para restaurar después
originalAdd = (ResponseQueue as any).add;
}); });
afterAll(() => { afterAll(() => {
(ResponseQueue as any).add = originalAdd;
// Close the test database // Close the test database
testDb.close(); testDb.close();
}); });
@ -82,6 +86,7 @@ describe('WebhookServer', () => {
afterEach(() => { afterEach(() => {
process.env = envBackup; process.env = envBackup;
(ResponseQueue as any).add = originalAdd;
}); });
const createTestRequest = (payload: any) => const createTestRequest = (payload: any) =>

@ -5,18 +5,21 @@ import { ResponseQueue } from '../../../src/services/response-queue';
let testDb: Database; let testDb: Database;
let envBackup: NodeJS.ProcessEnv; let envBackup: NodeJS.ProcessEnv;
let originalDbInstance: Database;
describe('ResponseQueue (persistent add)', () => { describe('ResponseQueue (persistent add)', () => {
beforeAll(() => { beforeAll(() => {
envBackup = { ...process.env }; envBackup = { ...process.env };
testDb = new Database(':memory:'); testDb = new Database(':memory:');
initializeDatabase(testDb); initializeDatabase(testDb);
// Inyectar DB de pruebas // Guardar e inyectar DB de pruebas
originalDbInstance = (ResponseQueue as any).dbInstance;
(ResponseQueue as any).dbInstance = testDb; (ResponseQueue as any).dbInstance = testDb;
}); });
afterAll(() => { afterAll(() => {
process.env = envBackup; process.env = envBackup;
(ResponseQueue as any).dbInstance = originalDbInstance;
testDb.close(); testDb.close();
}); });

Loading…
Cancel
Save