openAgent
gitlabThe open source UNIVERSAL agent.
clone
https://gitlab.com/bitzzdev/openAgent.gitAIagentautomationopen-sourceuniversal-agent
import { test, expect, describe } from "bun:test"import { resolvePluginProviders } from "../../src/cli/cmd/providers"import type { Hooks } from "@opencode-ai/plugin"function hookWithAuth(provider: string): Hooks {return {auth: {provider,methods: [],},}}function hookWithoutAuth(): Hooks {return {}}describe("resolvePluginProviders", () => {test("returns plugin providers not in models.dev", () => {const result = resolvePluginProviders({hooks: [hookWithAuth("portkey")],existingProviders: {},disabled: new Set(),providerNames: {},})expect(result).toEqual([{ id: "portkey", name: "portkey" }])})test("skips providers already in models.dev", () => {const result = resolvePluginProviders({hooks: [hookWithAuth("anthropic")],existingProviders: { anthropic: {} },disabled: new Set(),providerNames: {},})expect(result).toEqual([])})test("deduplicates across plugins", () => {const result = resolvePluginProviders({hooks: [hookWithAuth("portkey"), hookWithAuth("portkey")],existingProviders: {},disabled: new Set(),providerNames: {},})expect(result).toEqual([{ id: "portkey", name: "portkey" }])})test("respects disabled_providers", () => {const result = resolvePluginProviders({hooks: [hookWithAuth("portkey")],existingProviders: {},disabled: new Set(["portkey"]),providerNames: {},})expect(result).toEqual([])})test("respects enabled_providers when provider is absent", () => {const result = resolvePluginProviders({hooks: [hookWithAuth("portkey")],existingProviders: {},disabled: new Set(),enabled: new Set(["anthropic"]),providerNames: {},})expect(result).toEqual([])})test("includes provider when in enabled set", () => {const result = resolvePluginProviders({hooks: [hookWithAuth("portkey")],existingProviders: {},disabled: new Set(),enabled: new Set(["portkey"]),providerNames: {},})expect(result).toEqual([{ id: "portkey", name: "portkey" }])})test("resolves name from providerNames", () => {const result = resolvePluginProviders({hooks: [hookWithAuth("portkey")],existingProviders: {},disabled: new Set(),providerNames: { portkey: "Portkey AI" },})expect(result).toEqual([{ id: "portkey", name: "Portkey AI" }])})test("falls back to id when no name configured", () => {const result = resolvePluginProviders({hooks: [hookWithAuth("portkey")],existingProviders: {},disabled: new Set(),providerNames: {},})expect(result).toEqual([{ id: "portkey", name: "portkey" }])})test("skips hooks without auth", () => {const result = resolvePluginProviders({hooks: [hookWithoutAuth(), hookWithAuth("portkey"), hookWithoutAuth()],existingProviders: {},disabled: new Set(),providerNames: {},})expect(result).toEqual([{ id: "portkey", name: "portkey" }])})test("returns empty for no hooks", () => {const result = resolvePluginProviders({hooks: [],existingProviders: {},disabled: new Set(),providerNames: {},})expect(result).toEqual([])})})