Files
nanoclaw/container/agent-runner/src/providers/factory.test.ts
Tal Moskovich 22150261c5 feat(v2): OpenCode agent provider
- 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
2026-04-17 12:20:22 +03:00

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/);
});
});