summaryrefslogtreecommitdiff
path: root/internal/llm/provider_test.go
blob: 29e2514212cc25e3f34e0dd5b52e65224c30ca15 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package llm

import (
	"context"
	"testing"
)

func TestNewFromConfig_DefaultsAndErrors(t *testing.T) {
	// Unknown provider
	if _, err := NewFromConfig(Config{Provider: "bogus"}, "", ""); err == nil {
		t.Fatalf("expected error for unknown provider")
	}
	// OpenAI missing key
	if _, err := NewFromConfig(Config{Provider: "openai", OpenAIModel: "g"}, "", ""); err == nil {
		t.Fatalf("expected key error")
	}
	// Copilot missing key
	if _, err := NewFromConfig(Config{Provider: "copilot", CopilotModel: "m"}, "", ""); err == nil {
		t.Fatalf("expected key error")
	}
}

type fakeClientMin struct{}

func (fakeClientMin) Chat(context.Context, []Message, ...RequestOption) (string, error) {
	return "", nil
}
func (fakeClientMin) Name() string         { return "x" }
func (fakeClientMin) DefaultModel() string { return "m" }