|
|
|
|
@ -28,6 +28,8 @@ describe('Database', () => {
|
|
|
|
|
testDb.exec('DROP TABLE IF EXISTS group_members');
|
|
|
|
|
testDb.exec('DROP TABLE IF EXISTS groups');
|
|
|
|
|
testDb.exec('DROP TABLE IF EXISTS users');
|
|
|
|
|
// También reiniciar histórico de migraciones para forzar recreación de tablas
|
|
|
|
|
testDb.exec('DROP TABLE IF EXISTS schema_migrations');
|
|
|
|
|
// Initialize schema on the test database instance
|
|
|
|
|
initializeDatabase(testDb);
|
|
|
|
|
});
|
|
|
|
|
@ -41,9 +43,9 @@ describe('Database', () => {
|
|
|
|
|
|
|
|
|
|
// Order matters if foreign keys are involved during creation, though SQLite is flexible
|
|
|
|
|
const expectedTables = ['users', 'groups', 'group_members', 'tasks', 'task_assignments', 'response_queue'];
|
|
|
|
|
const userTables = tables.filter(t => !t.startsWith('sqlite_'));
|
|
|
|
|
// Check if all expected tables exist, order might vary slightly depending on execution
|
|
|
|
|
expect(userTables).toHaveLength(expectedTables.length);
|
|
|
|
|
// Filtrar tablas internas y de control de migraciones
|
|
|
|
|
const userTables = tables.filter(t => !t.startsWith('sqlite_') && t !== 'schema_migrations');
|
|
|
|
|
// Check if all expected tables exist (pueden existir tablas adicionales válidas como user_preferences)
|
|
|
|
|
expectedTables.forEach(table => expect(userTables).toContain(table));
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|