refactor(test): dedupe auth choice env cleanup

This commit is contained in:
Peter Steinberger
2026-02-15 23:59:28 +00:00
parent 7bb0b7d1fc
commit 07dea4c6cc

View File

@@ -5,6 +5,7 @@ import { afterEach, describe, expect, it, vi } from "vitest";
import type { RuntimeEnv } from "../runtime.js"; import type { RuntimeEnv } from "../runtime.js";
import type { WizardPrompter } from "../wizard/prompts.js"; import type { WizardPrompter } from "../wizard/prompts.js";
import type { AuthChoice } from "./onboard-types.js"; import type { AuthChoice } from "./onboard-types.js";
import { captureEnv } from "../test-utils/env.js";
import { applyAuthChoice, resolvePreferredProviderForAuthChoice } from "./auth-choice.js"; import { applyAuthChoice, resolvePreferredProviderForAuthChoice } from "./auth-choice.js";
import { import {
MINIMAX_CN_API_BASE_URL, MINIMAX_CN_API_BASE_URL,
@@ -38,18 +39,20 @@ const requireAgentDir = () => {
}; };
describe("applyAuthChoice", () => { describe("applyAuthChoice", () => {
const previousStateDir = process.env.OPENCLAW_STATE_DIR; const envSnapshot = captureEnv([
const previousAgentDir = process.env.OPENCLAW_AGENT_DIR; "OPENCLAW_STATE_DIR",
const previousPiAgentDir = process.env.PI_CODING_AGENT_DIR; "OPENCLAW_AGENT_DIR",
const previousAnthropicKey = process.env.ANTHROPIC_API_KEY; "PI_CODING_AGENT_DIR",
const previousOpenrouterKey = process.env.OPENROUTER_API_KEY; "ANTHROPIC_API_KEY",
const previousHfToken = process.env.HF_TOKEN; "OPENROUTER_API_KEY",
const previousHfHubToken = process.env.HUGGINGFACE_HUB_TOKEN; "HF_TOKEN",
const previousLitellmKey = process.env.LITELLM_API_KEY; "HUGGINGFACE_HUB_TOKEN",
const previousAiGatewayKey = process.env.AI_GATEWAY_API_KEY; "LITELLM_API_KEY",
const previousCloudflareGatewayKey = process.env.CLOUDFLARE_AI_GATEWAY_API_KEY; "AI_GATEWAY_API_KEY",
const previousSshTty = process.env.SSH_TTY; "CLOUDFLARE_AI_GATEWAY_API_KEY",
const previousChutesClientId = process.env.CHUTES_CLIENT_ID; "SSH_TTY",
"CHUTES_CLIENT_ID",
]);
let tempStateDir: string | null = null; let tempStateDir: string | null = null;
afterEach(async () => { afterEach(async () => {
@@ -61,66 +64,7 @@ describe("applyAuthChoice", () => {
await fs.rm(tempStateDir, { recursive: true, force: true }); await fs.rm(tempStateDir, { recursive: true, force: true });
tempStateDir = null; tempStateDir = null;
} }
if (previousStateDir === undefined) { envSnapshot.restore();
delete process.env.OPENCLAW_STATE_DIR;
} else {
process.env.OPENCLAW_STATE_DIR = previousStateDir;
}
if (previousAgentDir === undefined) {
delete process.env.OPENCLAW_AGENT_DIR;
} else {
process.env.OPENCLAW_AGENT_DIR = previousAgentDir;
}
if (previousPiAgentDir === undefined) {
delete process.env.PI_CODING_AGENT_DIR;
} else {
process.env.PI_CODING_AGENT_DIR = previousPiAgentDir;
}
if (previousAnthropicKey === undefined) {
delete process.env.ANTHROPIC_API_KEY;
} else {
process.env.ANTHROPIC_API_KEY = previousAnthropicKey;
}
if (previousOpenrouterKey === undefined) {
delete process.env.OPENROUTER_API_KEY;
} else {
process.env.OPENROUTER_API_KEY = previousOpenrouterKey;
}
if (previousHfToken === undefined) {
delete process.env.HF_TOKEN;
} else {
process.env.HF_TOKEN = previousHfToken;
}
if (previousHfHubToken === undefined) {
delete process.env.HUGGINGFACE_HUB_TOKEN;
} else {
process.env.HUGGINGFACE_HUB_TOKEN = previousHfHubToken;
}
if (previousLitellmKey === undefined) {
delete process.env.LITELLM_API_KEY;
} else {
process.env.LITELLM_API_KEY = previousLitellmKey;
}
if (previousAiGatewayKey === undefined) {
delete process.env.AI_GATEWAY_API_KEY;
} else {
process.env.AI_GATEWAY_API_KEY = previousAiGatewayKey;
}
if (previousCloudflareGatewayKey === undefined) {
delete process.env.CLOUDFLARE_AI_GATEWAY_API_KEY;
} else {
process.env.CLOUDFLARE_AI_GATEWAY_API_KEY = previousCloudflareGatewayKey;
}
if (previousSshTty === undefined) {
delete process.env.SSH_TTY;
} else {
process.env.SSH_TTY = previousSshTty;
}
if (previousChutesClientId === undefined) {
delete process.env.CHUTES_CLIENT_ID;
} else {
process.env.CHUTES_CLIENT_ID = previousChutesClientId;
}
}); });
it("does not throw when openai-codex oauth fails", async () => { it("does not throw when openai-codex oauth fails", async () => {