|
|
|
@ -3,6 +3,7 @@ import Database from 'bun:sqlite';
|
|
|
|
import { initializeDatabase, ensureUserExists } from '../../../src/db';
|
|
|
|
import { initializeDatabase, ensureUserExists } from '../../../src/db';
|
|
|
|
import { GroupSyncService } from '../../../src/services/group-sync';
|
|
|
|
import { GroupSyncService } from '../../../src/services/group-sync';
|
|
|
|
import { ResponseQueue } from '../../../src/services/response-queue';
|
|
|
|
import { ResponseQueue } from '../../../src/services/response-queue';
|
|
|
|
|
|
|
|
import { setDb, resetDb } from '../../../src/db/locator';
|
|
|
|
|
|
|
|
|
|
|
|
const envBackup = { ...process.env };
|
|
|
|
const envBackup = { ...process.env };
|
|
|
|
let originalSyncMembers: any;
|
|
|
|
let originalSyncMembers: any;
|
|
|
|
@ -90,8 +91,7 @@ describe('GroupSyncService - scheduler de miembros', () => {
|
|
|
|
|
|
|
|
|
|
|
|
const memdb = new Database(':memory:');
|
|
|
|
const memdb = new Database(':memory:');
|
|
|
|
initializeDatabase(memdb);
|
|
|
|
initializeDatabase(memdb);
|
|
|
|
(GroupSyncService as any).dbInstance = memdb;
|
|
|
|
setDb(memdb);
|
|
|
|
(ResponseQueue as any).dbInstance = memdb;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Sembrar grupo activo con miembro y token de calendario
|
|
|
|
// Sembrar grupo activo con miembro y token de calendario
|
|
|
|
memdb.exec(`INSERT INTO groups (id, community_id, name, active, archived, last_verified) VALUES ('g1@g.us','comm-1','G1',1,0,strftime('%Y-%m-%d %H:%M:%f','now'))`);
|
|
|
|
memdb.exec(`INSERT INTO groups (id, community_id, name, active, archived, last_verified) VALUES ('g1@g.us','comm-1','G1',1,0,strftime('%Y-%m-%d %H:%M:%f','now'))`);
|
|
|
|
@ -121,5 +121,9 @@ describe('GroupSyncService - scheduler de miembros', () => {
|
|
|
|
// Notificación encolada a admins
|
|
|
|
// Notificación encolada a admins
|
|
|
|
const msg = memdb.query(`SELECT message FROM response_queue ORDER BY id DESC LIMIT 1`).get() as any;
|
|
|
|
const msg = memdb.query(`SELECT message FROM response_queue ORDER BY id DESC LIMIT 1`).get() as any;
|
|
|
|
expect(msg && String(msg.message)).toContain('/admin archivar-grupo g1@g.us');
|
|
|
|
expect(msg && String(msg.message)).toContain('/admin archivar-grupo g1@g.us');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Limpieza de DB/locator local a este test
|
|
|
|
|
|
|
|
resetDb();
|
|
|
|
|
|
|
|
try { memdb.close(); } catch {}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|