add tool tests

This commit is contained in:
Dax Raad
2025-05-21 10:30:39 -04:00
parent f0f55bc75f
commit e01afb407c
15 changed files with 306 additions and 244 deletions

View File

@@ -11,15 +11,16 @@ export namespace App {
const ctx = Context.create<Info>("app");
export async function create(input: { directory: string }) {
async function create(input: { directory: string }) {
const dataDir = AppPath.data(input.directory);
await fs.mkdir(dataDir, { recursive: true });
await Log.file(input.directory);
log.info("creating");
const config = await Config.load(input.directory);
const dataDir = AppPath.data(input.directory);
await fs.mkdir(dataDir, { recursive: true });
log.info("created", { path: dataDir });
Log.file(input.directory);
const services = new Map<any, any>();
@@ -55,5 +56,11 @@ export namespace App {
return ctx.use();
}
export const provide = ctx.provide;
export async function provide<T extends (app: Info) => any>(
input: { directory: string },
cb: T,
) {
const app = await create(input);
return ctx.provide(app, () => cb(app));
}
}