|
1 | 1 | import { describe, it, expect, vi, beforeEach, afterEach } from "vitest"; |
2 | | -import { DebugLogger, createDebugLogger } from "@/debug-logger"; |
| 2 | +import { DebugLogger, createDebugLogger, resolveDebugLogger } from "@/debug-logger"; |
3 | 3 | import { resolveAgentDebugConfig, ResolvedAgentDebugConfig } from "@/agent/types"; |
4 | 4 |
|
5 | 5 | describe("resolveAgentDebugConfig", () => { |
@@ -148,6 +148,40 @@ describe("createDebugLogger", () => { |
148 | 148 | }); |
149 | 149 | }); |
150 | 150 |
|
| 151 | +describe("resolveDebugLogger", () => { |
| 152 | + it("returns undefined for undefined", () => { |
| 153 | + expect(resolveDebugLogger(undefined)).toBeUndefined(); |
| 154 | + }); |
| 155 | + |
| 156 | + it("returns undefined for null", () => { |
| 157 | + expect(resolveDebugLogger(null)).toBeUndefined(); |
| 158 | + }); |
| 159 | + |
| 160 | + it("returns undefined for false", () => { |
| 161 | + expect(resolveDebugLogger(false)).toBeUndefined(); |
| 162 | + }); |
| 163 | + |
| 164 | + it("returns a DebugLogger instance for true", () => { |
| 165 | + const logger = resolveDebugLogger(true); |
| 166 | + expect(logger).toBeInstanceOf(DebugLogger); |
| 167 | + expect(logger!.enabled).toBe(true); |
| 168 | + expect(logger!.eventsEnabled).toBe(true); |
| 169 | + expect(logger!.lifecycleEnabled).toBe(true); |
| 170 | + }); |
| 171 | + |
| 172 | + it("returns the same DebugLogger instance when given one", () => { |
| 173 | + const config: ResolvedAgentDebugConfig = { |
| 174 | + enabled: true, |
| 175 | + events: true, |
| 176 | + lifecycle: false, |
| 177 | + verbose: false, |
| 178 | + }; |
| 179 | + const original = new DebugLogger(config); |
| 180 | + const resolved = resolveDebugLogger(original); |
| 181 | + expect(resolved).toBe(original); |
| 182 | + }); |
| 183 | +}); |
| 184 | + |
151 | 185 | describe("DebugLogger.event()", () => { |
152 | 186 | let debugSpy: ReturnType<typeof vi.spyOn>; |
153 | 187 |
|
|
0 commit comments