test: share spawnSync builtin mock

This commit is contained in:
Peter Steinberger
2026-04-20 19:06:18 +01:00
parent 305d04b758
commit 02a6e78531
4 changed files with 17 additions and 21 deletions

View File

@@ -8,13 +8,9 @@ const isGatewayArgvMock = vi.hoisted(() => vi.fn());
const findGatewayPidsOnPortSyncMock = vi.hoisted(() => vi.fn());
vi.mock("node:child_process", async () => {
const { mockNodeBuiltinModule } = await import("../../test/helpers/node-builtin-mocks.js");
return mockNodeBuiltinModule(
() => vi.importActual<typeof import("node:child_process")>("node:child_process"),
{
spawnSync: (...args: unknown[]) => spawnSyncMock(...args),
},
);
const { mockNodeChildProcessSpawnSync } =
await import("../../test/helpers/node-builtin-mocks.js");
return mockNodeChildProcessSpawnSync(spawnSyncMock);
});
vi.mock("node:fs", async () => {

View File

@@ -4,13 +4,9 @@ import { afterEach, describe, expect, it, vi } from "vitest";
const spawnSyncMock = vi.hoisted(() => vi.fn());
vi.mock("node:child_process", async () => {
const { mockNodeBuiltinModule } = await import("../../test/helpers/node-builtin-mocks.js");
return mockNodeBuiltinModule(
() => vi.importActual<typeof import("node:child_process")>("node:child_process"),
{
spawnSync: (...args: unknown[]) => spawnSyncMock(...args),
},
);
const { mockNodeChildProcessSpawnSync } =
await import("../../test/helpers/node-builtin-mocks.js");
return mockNodeChildProcessSpawnSync(spawnSyncMock);
});
import { resolveOsSummary } from "./os-summary.js";

View File

@@ -5,13 +5,9 @@ const resolveLsofCommandSyncMock = vi.hoisted(() => vi.fn());
const resolveGatewayPortMock = vi.hoisted(() => vi.fn());
vi.mock("node:child_process", async () => {
const { mockNodeBuiltinModule } = await import("../../test/helpers/node-builtin-mocks.js");
return mockNodeBuiltinModule(
() => vi.importActual<typeof import("node:child_process")>("node:child_process"),
{
spawnSync: (...args: unknown[]) => spawnSyncMock(...args),
},
);
const { mockNodeChildProcessSpawnSync } =
await import("../../test/helpers/node-builtin-mocks.js");
return mockNodeChildProcessSpawnSync(spawnSyncMock);
});
vi.mock("./ports-lsof.js", () => ({

View File

@@ -41,3 +41,11 @@ export async function mockNodeBuiltinModule<TModule extends object>(
},
} as TModule;
}
export async function mockNodeChildProcessSpawnSync(
spawnSync: (...args: unknown[]) => unknown,
): Promise<typeof import("node:child_process")> {
return mockNodeBuiltinModule(() => import("node:child_process"), {
spawnSync: (...args: unknown[]) => spawnSync(...args),
} as Partial<typeof import("node:child_process")>);
}