From 76015aab234cd09332e5754ae8ddb19c2e49a43b Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 16 Feb 2026 00:14:31 +0000 Subject: [PATCH] refactor(test): dedupe copilot env restores --- ...hub-copilot-profile-env-tokens.e2e.test.ts | 29 ++++--------------- 1 file changed, 5 insertions(+), 24 deletions(-) diff --git a/src/agents/models-config.uses-first-github-copilot-profile-env-tokens.e2e.test.ts b/src/agents/models-config.uses-first-github-copilot-profile-env-tokens.e2e.test.ts index b858a234a..92b5d19dd 100644 --- a/src/agents/models-config.uses-first-github-copilot-profile-env-tokens.e2e.test.ts +++ b/src/agents/models-config.uses-first-github-copilot-profile-env-tokens.e2e.test.ts @@ -1,6 +1,7 @@ import fs from "node:fs/promises"; import path from "node:path"; import { describe, expect, it, vi } from "vitest"; +import { captureEnv } from "../test-utils/env.js"; import { resolveOpenClawAgentDir } from "./agent-paths.js"; import { installModelsConfigTestHooks, @@ -13,9 +14,7 @@ installModelsConfigTestHooks({ restoreFetch: true }); describe("models-config", () => { it("uses the first github-copilot profile when env tokens are missing", async () => { await withTempHome(async (home) => { - const previous = process.env.COPILOT_GITHUB_TOKEN; - const previousGh = process.env.GH_TOKEN; - const previousGithub = process.env.GITHUB_TOKEN; + const envSnapshot = captureEnv(["COPILOT_GITHUB_TOKEN", "GH_TOKEN", "GITHUB_TOKEN"]); delete process.env.COPILOT_GITHUB_TOKEN; delete process.env.GH_TOKEN; delete process.env.GITHUB_TOKEN; @@ -61,28 +60,14 @@ describe("models-config", () => { const [, opts] = fetchMock.mock.calls[0] as [string, { headers?: Record }]; expect(opts?.headers?.Authorization).toBe("Bearer alpha-token"); } finally { - if (previous === undefined) { - delete process.env.COPILOT_GITHUB_TOKEN; - } else { - process.env.COPILOT_GITHUB_TOKEN = previous; - } - if (previousGh === undefined) { - delete process.env.GH_TOKEN; - } else { - process.env.GH_TOKEN = previousGh; - } - if (previousGithub === undefined) { - delete process.env.GITHUB_TOKEN; - } else { - process.env.GITHUB_TOKEN = previousGithub; - } + envSnapshot.restore(); } }); }); it("does not override explicit github-copilot provider config", async () => { await withTempHome(async () => { - const previous = process.env.COPILOT_GITHUB_TOKEN; + const envSnapshot = captureEnv(["COPILOT_GITHUB_TOKEN"]); process.env.COPILOT_GITHUB_TOKEN = "gh-token"; const fetchMock = vi.fn().mockResolvedValue({ ok: true, @@ -115,11 +100,7 @@ describe("models-config", () => { expect(parsed.providers["github-copilot"]?.baseUrl).toBe("https://copilot.local"); } finally { - if (previous === undefined) { - delete process.env.COPILOT_GITHUB_TOKEN; - } else { - process.env.COPILOT_GITHUB_TOKEN = previous; - } + envSnapshot.restore(); } }); });