astro/packages/integrations/deno/test/helpers.js
2022-04-15 21:02:19 +00:00

23 lines
647 B
JavaScript

import { fromFileUrl } from './deps.js';
const dir = new URL('./', import.meta.url);
export async function runBuild(fixturePath) {
let proc = Deno.run({
cmd: ['node', '../../../../../astro/astro.js', 'build', '--silent'],
cwd: fromFileUrl(new URL(fixturePath, dir)),
});
await proc.status();
return async () => await proc.close();
}
export async function runBuildAndStartApp(fixturePath, cb) {
const url = new URL(fixturePath, dir);
const close = await runBuild(fixturePath);
const mod = await import(new URL('./dist/server/entry.mjs', url));
if (!mod.running()) {
mod.start();
}
await cb();
await mod.stop();
await close();
}