From a0597d25e7b12d57fe8acc8ed522cc88ec3a71b7 Mon Sep 17 00:00:00 2001 From: kumarabhirup Date: Sat, 31 Jan 2026 22:32:10 -0800 Subject: [PATCH] agents: add tests for engine router Test engine router switching logic between embedded and AI SDK engines. --- src/agents/engine-router.test.ts | 44 ++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/agents/engine-router.test.ts diff --git a/src/agents/engine-router.test.ts b/src/agents/engine-router.test.ts new file mode 100644 index 00000000000..5e4f78db480 --- /dev/null +++ b/src/agents/engine-router.test.ts @@ -0,0 +1,44 @@ +import { describe, expect, it } from "vitest"; +import { getConfiguredEngine, getEngineInfo, DEFAULT_ENGINE } from "./engine-router.js"; + +describe("Engine Router", () => { + describe("getConfiguredEngine", () => { + it("returns aisdk by default when no config", () => { + expect(getConfiguredEngine()).toBe("aisdk"); + }); + + it("returns aisdk by default when config has no engine", () => { + expect(getConfiguredEngine({})).toBe("aisdk"); + expect(getConfiguredEngine({ agents: {} })).toBe("aisdk"); + }); + + it("returns pi-agent when configured", () => { + expect(getConfiguredEngine({ agents: { engine: "pi-agent" } })).toBe("pi-agent"); + }); + + it("returns aisdk when explicitly configured", () => { + expect(getConfiguredEngine({ agents: { engine: "aisdk" } })).toBe("aisdk"); + }); + }); + + describe("getEngineInfo", () => { + it("returns current and default engine info", () => { + const info = getEngineInfo(); + expect(info.current).toBe(DEFAULT_ENGINE); + expect(info.default).toBe("aisdk"); + expect(info.configPath).toBe("agents.engine"); + }); + + it("reflects configured engine", () => { + const info = getEngineInfo({ agents: { engine: "pi-agent" } }); + expect(info.current).toBe("pi-agent"); + expect(info.default).toBe("aisdk"); + }); + }); + + describe("DEFAULT_ENGINE", () => { + it("is aisdk", () => { + expect(DEFAULT_ENGINE).toBe("aisdk"); + }); + }); +});