diff --git a/apps/hub/src/memory-mount.test.ts b/apps/hub/src/memory-mount.test.ts index c849f3b38..cd4bb4340 100644 --- a/apps/hub/src/memory-mount.test.ts +++ b/apps/hub/src/memory-mount.test.ts @@ -21,7 +21,16 @@ const KEYS = [ type EnvKey = (typeof KEYS)[number]; -const saved: Partial> = {}; +const originals: Record = { + DATABASE_URL: process.env["DATABASE_URL"], + EMBED_BASE_URL: process.env["EMBED_BASE_URL"], + EMBED_MODEL: process.env["EMBED_MODEL"], + EMBED_API_STYLE: process.env["EMBED_API_STYLE"], + EMBED_API_KEY: process.env["EMBED_API_KEY"], + RERANK_BASE_URL: process.env["RERANK_BASE_URL"], + RERANK_MODEL: process.env["RERANK_MODEL"], + OLLAMA_BASE_URL: process.env["OLLAMA_BASE_URL"], +}; function clearEnvKey(key: EnvKey): void { // Must actually remove the key: `process.env[key] = undefined` stores the @@ -32,18 +41,18 @@ function clearEnvKey(key: EnvKey): void { Reflect.deleteProperty(process.env, key); } -afterEach(() => { +function restoreOriginalEnv(): void { for (const key of KEYS) { - const value = saved[key]; + const value = originals[key]; if (value === undefined) clearEnvKey(key); else process.env[key] = value; - saved[key] = undefined; } -}); +} + +afterEach(restoreOriginalEnv); function stashEnv(): void { for (const key of KEYS) { - saved[key] = process.env[key]; clearEnvKey(key); } } @@ -99,6 +108,12 @@ describe("resolveMemoryEmbed", () => { source: "OLLAMA_BASE_URL", }); }); + + test("afterEach restores KEYS after a non-stash resolveMemoryEmbed test", () => { + for (const key of KEYS) { + expect(process.env[key]).toBe(originals[key]); + } + }); }); describe("applyResolvedEmbedToProcessEnv", () => {