@@ -5,6 +5,14 @@ import { describe, expect, it, vi } from "vitest";
|
5 | 5 | import { loadCliDotEnv } from "../cli/dotenv.js"; |
6 | 6 | import { loadDotEnv, loadWorkspaceDotEnvFile } from "./dotenv.js"; |
7 | 7 | |
| 8 | +const loggerMocks = vi.hoisted(() => ({ |
| 9 | +warn: vi.fn(), |
| 10 | +})); |
| 11 | + |
| 12 | +vi.mock("../logging/subsystem.js", () => ({ |
| 13 | +createSubsystemLogger: vi.fn(() => loggerMocks), |
| 14 | +})); |
| 15 | + |
8 | 16 | const CREDENTIAL_AND_GATEWAY_ENV_KEYS = [ |
9 | 17 | "ANTHROPIC_API_KEY", |
10 | 18 | "ANTHROPIC_API_KEY_SECONDARY", |
@@ -152,14 +160,18 @@ describe("loadDotEnv", () => {
|
152 | 160 | vi.spyOn(process, "cwd").mockReturnValue(cwdDir); |
153 | 161 | delete process.env.FOO; |
154 | 162 | delete process.env.BAR; |
155 | | -const warn = vi.spyOn(console, "warn").mockImplementation(() => undefined); |
| 163 | +loggerMocks.warn.mockClear(); |
156 | 164 | |
157 | 165 | loadDotEnv({ quiet: true }); |
158 | 166 | |
159 | 167 | expect(process.env.FOO).toBe("from-global"); |
160 | 168 | expect(process.env.BAR).toBe("from-gateway"); |
161 | | -expect(warn).toHaveBeenCalledWith(expect.stringContaining("Conflicting values in")); |
162 | | -expect(warn).toHaveBeenCalledWith(expect.stringContaining("gateway.env")); |
| 169 | +expect(loggerMocks.warn).toHaveBeenCalledWith( |
| 170 | +expect.stringContaining("Conflicting values in"), |
| 171 | +expect.objectContaining({ |
| 172 | +ignoredPath: expect.stringContaining("gateway.env"), |
| 173 | +}), |
| 174 | +); |
163 | 175 | }); |
164 | 176 | }); |
165 | 177 | }); |
|