package learning import ( "context" "github.com/gooseek/backend/internal/llm" ) type mockLLMClient struct { generateFunc func(ctx context.Context, req llm.StreamRequest) (string, error) streamFunc func(ctx context.Context, req llm.StreamRequest) (<-chan llm.StreamChunk, error) } func (m *mockLLMClient) StreamText(ctx context.Context, req llm.StreamRequest) (<-chan llm.StreamChunk, error) { if m.streamFunc != nil { return m.streamFunc(ctx, req) } ch := make(chan llm.StreamChunk) close(ch) return ch, nil } func (m *mockLLMClient) GenerateText(ctx context.Context, req llm.StreamRequest) (string, error) { if m.generateFunc != nil { return m.generateFunc(ctx, req) } return "", nil } func (m *mockLLMClient) GetProviderID() string { return "mock" } func (m *mockLLMClient) GetModelKey() string { return "mock-model" }