From a94c6fcf7893d4b7bb830e49f13573a900964537 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 21 Sep 2022 16:59:43 +0200 Subject: [PATCH] backend-tasks: fix for fake timers blocking db setup Signed-off-by: Patrik Oldsberg --- .../src/tasks/PluginTaskSchedulerImpl.test.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/backend-tasks/src/tasks/PluginTaskSchedulerImpl.test.ts b/packages/backend-tasks/src/tasks/PluginTaskSchedulerImpl.test.ts index 16550b2d7d..f6177b57f7 100644 --- a/packages/backend-tasks/src/tasks/PluginTaskSchedulerImpl.test.ts +++ b/packages/backend-tasks/src/tasks/PluginTaskSchedulerImpl.test.ts @@ -25,8 +25,6 @@ import { PluginTaskSchedulerImpl, } from './PluginTaskSchedulerImpl'; -jest.useFakeTimers(); - function defer() { let resolve = () => {}; const promise = new Promise(_resolve => { @@ -40,6 +38,15 @@ describe('PluginTaskManagerImpl', () => { ids: ['POSTGRES_13', 'POSTGRES_9', 'SQLITE_3'], }); + beforeAll(async () => { + // Make sure all databases are running before mocking timers, in case of testcontainers + await Promise.all( + databases.eachSupportedId().map(([id]) => databases.init(id)), + ); + + jest.useFakeTimers(); + }, 30_000); + async function init(databaseId: TestDatabaseId) { const knex = await databases.init(databaseId); await migrateBackendTasks(knex);