blob: 8031e6274183b3f8684be4e019abfb071e264673 [file] [log] [blame]
iomodof1ddefe2025-07-28 09:02:05 +04001package fake
2
3import (
4 "github.com/iomodo/staff/llm"
5)
6
7// FakeFactory creates fake LLM providers for testing
8type FakeFactory struct{}
9
10// NewFakeFactory creates a new fake factory
11func NewFakeFactory() *FakeFactory {
12 return &FakeFactory{}
13}
14
15// CreateProvider creates a new fake provider
16func (f *FakeFactory) CreateProvider(config llm.Config) (llm.LLMProvider, error) {
17 return NewFakeProvider(), nil
18}
19
20// SupportsProvider returns true if this factory supports the given provider type
21func (f *FakeFactory) SupportsProvider(provider llm.Provider) bool {
22 return provider == llm.ProviderFake
23}
24
25// init registers the fake factory when the package is imported
26func init() {
27 llm.RegisterProvider(llm.ProviderFake, NewFakeFactory())
28}