import nodeFetch from 'node-fetch'; import { type JestConfigWithTsJest } from 'ts-jest'; import 'tsconfig-paths/register'; import { rawDataSource } from 'src/database/typeorm/raw/raw.datasource'; import { createApp } from './create-app'; export default async (_: unknown, projectConfig: JestConfigWithTsJest) => { // node-fetch rides node:http, which msw patches; native undici fetch // escapes interception. globalThis.fetch = nodeFetch as unknown as typeof globalThis.fetch; const app = await createApp({}); if (!projectConfig.globals) { throw new Error('No globals found in project config'); } await rawDataSource.initialize(); await app.listen(projectConfig.globals.APP_PORT as number); global.app = app; global.testDataSource = rawDataSource; };