js-waku/packages/tests/src/run-tests.js

51 lines
1021 B
JavaScript
Raw Normal View History

import { exec, spawn } from "child_process";
import { promisify } from "util";
const execAsync = promisify(exec);
const WAKUNODE_IMAGE =
process.env.WAKUNODE_IMAGE || "statusteam/nim-waku:v0.16.0";
async function main() {
try {
await execAsync(`docker inspect ${WAKUNODE_IMAGE}`);
console.log("Using local image");
} catch (error) {
console.log("Pulling image...");
await execAsync(`docker pull ${WAKUNODE_IMAGE}`);
console.log("Image pulled");
}
// Run mocha tests
const mocha = spawn(
"npx",
[
"mocha",
"--require",
"ts-node/register",
"--project",
"./tsconfig.dev.json",
],
{
stdio: "inherit",
}
);
mocha.on("error", (error) => {
console.log(`Error running mocha tests: ${error.message}`);
process.exit(1);
});
mocha.on("exit", (code) => {
console.log(`Mocha tests exited with code ${code}`);
process.exit(code || 0);
});
}
main().catch((error) => {
console.log(error);
process.exit(1);
});