import * as NodeOS from "node:os";import { assert, it } from "vite-plus/test"; import { hydratePosixHome } from "./os-jank.ts"; it("hydrates HOME for minimal service environments from the user account", () => { const env: NodeJS.ProcessEnv = {}; hydratePosixHome(env); assert.equal(env.HOME, NodeOS.userInfo().homedir);}); it("hydrates HOME independently of a blank process HOME", () => { const originalHome = process.env.HOME; const env: NodeJS.ProcessEnv = { HOME: " " }; try { process.env.HOME = " "; hydratePosixHome(env); } finally { if (originalHome === undefined) { delete process.env.HOME; } else { process.env.HOME = originalHome; } } assert.equal(env.HOME, NodeOS.userInfo().homedir);}); it("preserves an explicitly configured HOME", () => { const env: NodeJS.ProcessEnv = { HOME: "/custom/home" }; hydratePosixHome(env, () => { throw new Error("HOME lookup should not run"); }); assert.equal(env.HOME, "/custom/home");});
import * as NodeOS from "node:os";
import { assert, it } from "vite-plus/test";
import { hydratePosixHome } from "./os-jank.ts";
it("hydrates HOME for minimal service environments from the user account", () => {
const env: NodeJS.ProcessEnv = {};
hydratePosixHome(env);
assert.equal(env.HOME, NodeOS.userInfo().homedir);
});
it("hydrates HOME independently of a blank process HOME", () => {
const originalHome = process.env.HOME;
const env: NodeJS.ProcessEnv = { HOME: " " };
try {
process.env.HOME = " ";
hydratePosixHome(env);
} finally {
if (originalHome === undefined) {
delete process.env.HOME;
} else {
process.env.HOME = originalHome;
}
}
assert.equal(env.HOME, NodeOS.userInfo().homedir);
});
it("preserves an explicitly configured HOME", () => {
const env: NodeJS.ProcessEnv = { HOME: "/custom/home" };
hydratePosixHome(env, () => {
throw new Error("HOME lookup should not run");
});
assert.equal(env.HOME, "/custom/home");
});