test: normalize owning npm path assertions

This commit is contained in:
Peter Steinberger 2026-04-03 22:23:54 +01:00
parent 932379b19f
commit ee45a59b4e
No known key found for this signature in database
1 changed files with 12 additions and 1 deletions

View File

@ -751,6 +751,12 @@ describe("update-cli", () => {
const brewRoot = path.join(brewPrefix, "lib", "node_modules");
const pkgRoot = path.join(brewRoot, "openclaw");
const brewNpm = path.join(brewPrefix, "bin", "npm");
const win32PrefixNpm = path.join(brewPrefix, "npm.cmd");
const owningNpmCommands = new Set(
[brewNpm, path.resolve(brewNpm), win32PrefixNpm, path.resolve(win32PrefixNpm)].map(
(candidate) => path.normalize(candidate),
),
);
const pathNpmRoot = createCaseDir("nvm-root");
mockPackageInstallStatus(pkgRoot);
pathExists.mockResolvedValue(false);
@ -776,7 +782,11 @@ describe("update-cli", () => {
termination: "exit",
};
}
if (argv[0] === brewNpm && argv[1] === "root" && argv[2] === "-g") {
if (
owningNpmCommands.has(path.normalize(String(argv[0] ?? ""))) &&
argv[1] === "root" &&
argv[2] === "-g"
) {
return {
stdout: `${brewRoot}\n`,
stderr: "",
@ -808,6 +818,7 @@ describe("update-cli", () => {
.mock.calls.find(
([argv]) =>
Array.isArray(argv) &&
owningNpmCommands.has(path.normalize(String(argv[0] ?? ""))) &&
argv[1] === "i" &&
argv[2] === "-g" &&
argv[3] === "openclaw@latest",