- Add OpenCodeProvider (SSE, session resume, MCP via mcp-to-opencode) - Register opencode in factory; AGENT_PROVIDER passthrough from DB - Host: XDG mount, NO_PROXY merge, OPENCODE_* env for opencode sessions - Dockerfile: opencode-ai CLI; docs checklist + architecture diagram - Skill add-opencode for v2; AgentProviderName in src/types.ts Made-with: Cursor
25 lines
805 B
TypeScript
25 lines
805 B
TypeScript
import { describe, it, expect } from 'bun:test';
|
|
|
|
import { createProvider, type ProviderName } from './factory.js';
|
|
import { ClaudeProvider } from './claude.js';
|
|
import { MockProvider } from './mock.js';
|
|
import { OpenCodeProvider } from './opencode.js';
|
|
|
|
describe('createProvider', () => {
|
|
it('returns ClaudeProvider for claude', () => {
|
|
expect(createProvider('claude')).toBeInstanceOf(ClaudeProvider);
|
|
});
|
|
|
|
it('returns OpenCodeProvider for opencode', () => {
|
|
expect(createProvider('opencode')).toBeInstanceOf(OpenCodeProvider);
|
|
});
|
|
|
|
it('returns MockProvider for mock', () => {
|
|
expect(createProvider('mock')).toBeInstanceOf(MockProvider);
|
|
});
|
|
|
|
it('throws for unknown name', () => {
|
|
expect(() => createProvider('bogus' as ProviderName)).toThrow(/Unknown provider/);
|
|
});
|
|
});
|