refactor(test): collapse gateway e2e env snapshots

This commit is contained in:
Peter Steinberger
2026-02-21 18:25:54 +00:00
parent dda9e9f094
commit bfa59bd22e

View File

@@ -3,6 +3,7 @@ import fs from "node:fs/promises";
import os from "node:os"; import os from "node:os";
import path from "node:path"; import path from "node:path";
import { describe, expect, it } from "vitest"; import { describe, expect, it } from "vitest";
import { captureEnv } from "../test-utils/env.js";
import { startGatewayServer } from "./server.js"; import { startGatewayServer } from "./server.js";
import { extractPayloadText } from "./test-helpers.agent-results.js"; import { extractPayloadText } from "./test-helpers.agent-results.js";
import { import {
@@ -19,16 +20,16 @@ describe("gateway e2e", () => {
"runs a mock OpenAI tool call end-to-end via gateway agent loop", "runs a mock OpenAI tool call end-to-end via gateway agent loop",
{ timeout: 90_000 }, { timeout: 90_000 },
async () => { async () => {
const prev = { const envSnapshot = captureEnv([
home: process.env.HOME, "HOME",
configPath: process.env.OPENCLAW_CONFIG_PATH, "OPENCLAW_CONFIG_PATH",
token: process.env.OPENCLAW_GATEWAY_TOKEN, "OPENCLAW_GATEWAY_TOKEN",
skipChannels: process.env.OPENCLAW_SKIP_CHANNELS, "OPENCLAW_SKIP_CHANNELS",
skipGmail: process.env.OPENCLAW_SKIP_GMAIL_WATCHER, "OPENCLAW_SKIP_GMAIL_WATCHER",
skipCron: process.env.OPENCLAW_SKIP_CRON, "OPENCLAW_SKIP_CRON",
skipCanvas: process.env.OPENCLAW_SKIP_CANVAS_HOST, "OPENCLAW_SKIP_CANVAS_HOST",
skipBrowser: process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER, "OPENCLAW_SKIP_BROWSER_CONTROL_SERVER",
}; ]);
const { baseUrl: openaiBaseUrl, restore } = installOpenAiResponsesMock(); const { baseUrl: openaiBaseUrl, restore } = installOpenAiResponsesMock();
@@ -107,30 +108,23 @@ describe("gateway e2e", () => {
await server.close({ reason: "mock openai test complete" }); await server.close({ reason: "mock openai test complete" });
await fs.rm(tempHome, { recursive: true, force: true }); await fs.rm(tempHome, { recursive: true, force: true });
restore(); restore();
process.env.HOME = prev.home; envSnapshot.restore();
process.env.OPENCLAW_CONFIG_PATH = prev.configPath;
process.env.OPENCLAW_GATEWAY_TOKEN = prev.token;
process.env.OPENCLAW_SKIP_CHANNELS = prev.skipChannels;
process.env.OPENCLAW_SKIP_GMAIL_WATCHER = prev.skipGmail;
process.env.OPENCLAW_SKIP_CRON = prev.skipCron;
process.env.OPENCLAW_SKIP_CANVAS_HOST = prev.skipCanvas;
process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER = prev.skipBrowser;
} }
}, },
); );
it("runs wizard over ws and writes auth token config", { timeout: 90_000 }, async () => { it("runs wizard over ws and writes auth token config", { timeout: 90_000 }, async () => {
const prev = { const envSnapshot = captureEnv([
home: process.env.HOME, "HOME",
stateDir: process.env.OPENCLAW_STATE_DIR, "OPENCLAW_STATE_DIR",
configPath: process.env.OPENCLAW_CONFIG_PATH, "OPENCLAW_CONFIG_PATH",
token: process.env.OPENCLAW_GATEWAY_TOKEN, "OPENCLAW_GATEWAY_TOKEN",
skipChannels: process.env.OPENCLAW_SKIP_CHANNELS, "OPENCLAW_SKIP_CHANNELS",
skipGmail: process.env.OPENCLAW_SKIP_GMAIL_WATCHER, "OPENCLAW_SKIP_GMAIL_WATCHER",
skipCron: process.env.OPENCLAW_SKIP_CRON, "OPENCLAW_SKIP_CRON",
skipCanvas: process.env.OPENCLAW_SKIP_CANVAS_HOST, "OPENCLAW_SKIP_CANVAS_HOST",
skipBrowser: process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER, "OPENCLAW_SKIP_BROWSER_CONTROL_SERVER",
}; ]);
process.env.OPENCLAW_SKIP_CHANNELS = "1"; process.env.OPENCLAW_SKIP_CHANNELS = "1";
process.env.OPENCLAW_SKIP_GMAIL_WATCHER = "1"; process.env.OPENCLAW_SKIP_GMAIL_WATCHER = "1";
@@ -233,15 +227,7 @@ describe("gateway e2e", () => {
} finally { } finally {
await server2.close({ reason: "wizard auth verify" }); await server2.close({ reason: "wizard auth verify" });
await fs.rm(tempHome, { recursive: true, force: true }); await fs.rm(tempHome, { recursive: true, force: true });
process.env.HOME = prev.home; envSnapshot.restore();
process.env.OPENCLAW_STATE_DIR = prev.stateDir;
process.env.OPENCLAW_CONFIG_PATH = prev.configPath;
process.env.OPENCLAW_GATEWAY_TOKEN = prev.token;
process.env.OPENCLAW_SKIP_CHANNELS = prev.skipChannels;
process.env.OPENCLAW_SKIP_GMAIL_WATCHER = prev.skipGmail;
process.env.OPENCLAW_SKIP_CRON = prev.skipCron;
process.env.OPENCLAW_SKIP_CANVAS_HOST = prev.skipCanvas;
process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER = prev.skipBrowser;
} }
}); });
}); });