e2f5c0d361
Remove the dead plugin-dispose module and its dedicated test now that V1 plugin migration removed the last production call site. Clean the remaining bootstrap test mocks so src no longer references createPluginDispose. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
86 lines
3.1 KiB
TypeScript
86 lines
3.1 KiB
TypeScript
import { describe, expect, it } from "bun:test"
|
|
|
|
describe("look_at tool conditional registration", () => {
|
|
describe("isMultimodalLookerEnabled logic", () => {
|
|
// given multimodal-looker is in disabled_agents
|
|
// when checking if agent is enabled
|
|
// then should return false (disabled)
|
|
it("returns false when multimodal-looker is disabled (exact case)", () => {
|
|
const disabledAgents: string[] = ["multimodal-looker"]
|
|
const isEnabled = !disabledAgents.some(
|
|
(agent) => agent.toLowerCase() === "multimodal-looker",
|
|
)
|
|
expect(isEnabled).toBe(false)
|
|
})
|
|
|
|
// given multimodal-looker is in disabled_agents with different case
|
|
// when checking if agent is enabled
|
|
// then should return false (case-insensitive match)
|
|
it("returns false when multimodal-looker is disabled (case-insensitive)", () => {
|
|
const disabledAgents: string[] = ["Multimodal-Looker"]
|
|
const isEnabled = !disabledAgents.some(
|
|
(agent) => agent.toLowerCase() === "multimodal-looker",
|
|
)
|
|
expect(isEnabled).toBe(false)
|
|
})
|
|
|
|
// given multimodal-looker is NOT in disabled_agents
|
|
// when checking if agent is enabled
|
|
// then should return true (enabled)
|
|
it("returns true when multimodal-looker is not disabled", () => {
|
|
const disabledAgents: string[] = ["oracle", "librarian"]
|
|
const isEnabled = !disabledAgents.some(
|
|
(agent) => agent.toLowerCase() === "multimodal-looker",
|
|
)
|
|
expect(isEnabled).toBe(true)
|
|
})
|
|
|
|
// given disabled_agents is empty
|
|
// when checking if agent is enabled
|
|
// then should return true (enabled by default)
|
|
it("returns true when disabled_agents is empty", () => {
|
|
const disabledAgents: string[] = []
|
|
const isEnabled = !disabledAgents.some(
|
|
(agent) => agent.toLowerCase() === "multimodal-looker",
|
|
)
|
|
expect(isEnabled).toBe(true)
|
|
})
|
|
|
|
// given disabled_agents is undefined (simulated as empty array)
|
|
// when checking if agent is enabled
|
|
// then should return true (enabled by default)
|
|
it("returns true when disabled_agents is undefined (fallback to empty)", () => {
|
|
const disabledAgents: string[] | undefined = undefined
|
|
const list: string[] = disabledAgents ?? []
|
|
const isEnabled = !list.some(
|
|
(agent) => agent.toLowerCase() === "multimodal-looker",
|
|
)
|
|
expect(isEnabled).toBe(true)
|
|
})
|
|
})
|
|
|
|
describe("conditional tool spread pattern", () => {
|
|
// given lookAt is not null (agent enabled)
|
|
// when spreading into tool object
|
|
// then look_at should be included
|
|
it("includes look_at when lookAt is not null", () => {
|
|
const lookAt = { execute: () => {} }
|
|
const tools = {
|
|
...(lookAt ? { look_at: lookAt } : {}),
|
|
}
|
|
expect(tools).toHaveProperty("look_at")
|
|
})
|
|
|
|
// given lookAt is null (agent disabled)
|
|
// when spreading into tool object
|
|
// then look_at should NOT be included
|
|
it("excludes look_at when lookAt is null", () => {
|
|
const lookAt = null
|
|
const tools = {
|
|
...(lookAt ? { look_at: lookAt } : {}),
|
|
}
|
|
expect(tools).not.toHaveProperty("look_at")
|
|
})
|
|
})
|
|
})
|