Files
puter/src/backend/testUtil.ts
T
Daniel Salazar 775c9c49e2 test: add harness and some examples (#2941)
* test: add harness and some examples

* feat: tests ran on pr
2026-05-06 22:43:22 -07:00

30 lines
975 B
TypeScript

import { deepMerge } from '../../tools/lib/configMigration.mjs';
import { PuterServer } from './server';
import { IConfig } from './types';
export const setupTestServer = async (configOverrides?: IConfig) => {
// read default config json
const defaultConfig = await import('../../config.default.json', {
with: {
type: 'json',
},
});
// merge default config with overrides and test defaults
const config = deepMerge(
deepMerge(defaultConfig, {
extensions: [],
port: 0,
database: { engine: 'sqlite', inMemory: true },
dynamo: { inMemory: true, bootstrapTables: true },
redis: { useMock: true },
s3: { localConfig: { inMemory: true } },
no_default_user: true,
no_devwatch: true,
}),
configOverrides ?? {},
);
const server = new PuterServer(config);
await server.start(true);
return server;
};