Check that the rad binary used is the same as added to PATH

We weren't checking that the binary that we want to use for the test
suite, is the one we end up using.
This commit is contained in:
Sebastian Martinez
2023-12-22 12:52:21 +00:00
committed by Rūdolfs Ošiņš
parent 4912d85198
commit 56eefb86fa
+8 -4
View File
@@ -29,13 +29,17 @@ export const heartwoodShortSha = (
await Fs.readFile(`${supportDir}/heartwood-version`, "utf8")
).substring(0, 7);
process.env.PATH = [
Path.join(tmpDir, "bin", heartwoodShortSha),
process.env.PATH,
].join(Path.delimiter);
const binaryPath = Path.join(tmpDir, "bin", heartwoodShortSha);
process.env.PATH = [binaryPath, process.env.PATH].join(Path.delimiter);
// Assert that the `rad` CLI is installed and has the correct version.
export async function assertRadInstalled(): Promise<void> {
const { stdout: which } = await execa("which", ["rad"]);
if (Path.dirname(which) !== binaryPath) {
throw new Error(
`rad path doesn't match used rad binary: ${binaryPath} !== ${which}`,
);
}
const { stdout: version } = await execa("rad", ["--version"]);
if (!version.includes(heartwoodShortSha)) {
throw new Error(