37 lines
817 B
JavaScript
37 lines
817 B
JavaScript
import { spawnSync } from "node:child_process";
|
|
import { join } from "node:path";
|
|
|
|
const rawArgs = process.argv.slice(2);
|
|
const passthroughArgs = [];
|
|
|
|
for (let index = 0; index < rawArgs.length; index += 1) {
|
|
const arg = rawArgs[index];
|
|
|
|
if (arg === "--testPathPattern") {
|
|
const value = rawArgs[index + 1];
|
|
if (value) {
|
|
passthroughArgs.push(value);
|
|
index += 1;
|
|
}
|
|
continue;
|
|
}
|
|
|
|
if (arg.startsWith("--testPathPattern=")) {
|
|
passthroughArgs.push(arg.slice("--testPathPattern=".length));
|
|
continue;
|
|
}
|
|
|
|
passthroughArgs.push(arg);
|
|
}
|
|
|
|
const vitestBin = join(process.cwd(), "node_modules", ".bin", "vitest");
|
|
const result = spawnSync(vitestBin, ["run", ...passthroughArgs], {
|
|
stdio: "inherit",
|
|
});
|
|
|
|
if (result.error) {
|
|
throw result.error;
|
|
}
|
|
|
|
process.exit(result.status ?? 1);
|