























@@ -1,8 +1,8 @@
1-import { execFileSync, spawnSync } from "node:child_process";
21import { chmodSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from "node:fs";
32import { tmpdir } from "node:os";
43import { join } from "node:path";
54import { describe, expect, it } from "vitest";
5+import { execNodeEvalSync, spawnNodeEvalSync } from "../../src/test-utils/node-process.js";
6677const WRAPPERS = {
88linux: "scripts/e2e/parallels-linux-smoke.sh",
@@ -46,10 +46,7 @@ function countNonEmptyLines(value: string): number {
4646}
47474848function runTsEval(source: string, env: Record<string, string> = {}) {
49-return execFileSync("node", ["--import", "tsx", "--input-type=module", "--eval", source], {
50-encoding: "utf8",
51-env: { ...process.env, ...env },
52-});
49+return execNodeEvalSync(source, { env: { ...process.env, ...env }, imports: ["tsx"] });
5350}
54515552function resolveProviderAuth(
@@ -313,32 +310,18 @@ console.log(JSON.stringify(result));
313310});
314311315312it("rejects invalid providers and missing keys before touching guests", () => {
316-const invalidProvider = spawnSync(
317-"node",
318-[
319-"--import",
320-"tsx",
321-"--input-type=module",
322-"--eval",
323-`import { parseProvider } from "./${TS_PATHS.common}"; parseProvider("bogus");`,
324-],
325-{ encoding: "utf8", env: process.env },
313+const invalidProvider = spawnNodeEvalSync(
314+`import { parseProvider } from "./${TS_PATHS.common}"; parseProvider("bogus");`,
315+{ env: process.env, imports: ["tsx"] },
326316);
327317expect(invalidProvider.status).toBe(1);
328318expect(invalidProvider.stderr).toContain("invalid --provider: bogus");
329319330-const missingKey = spawnSync(
331-"node",
332-[
333-"--import",
334-"tsx",
335-"--input-type=module",
336-"--eval",
337-`import { resolveProviderAuth } from "./${TS_PATHS.common}"; resolveProviderAuth({ provider: "openai", apiKeyEnv: "PARALLELS_TEST_MISSING_KEY" });`,
338-],
320+const missingKey = spawnNodeEvalSync(
321+`import { resolveProviderAuth } from "./${TS_PATHS.common}"; resolveProviderAuth({ provider: "openai", apiKeyEnv: "PARALLELS_TEST_MISSING_KEY" });`,
339322{
340-encoding: "utf8",
341323env: { ...process.env, PARALLELS_TEST_MISSING_KEY: "" },
324+imports: ["tsx"],
342325},
343326);
344327expect(missingKey.status).toBe(1);
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。