1package providertests
2
3import (
4 "net/http"
5 "os"
6 "testing"
7
8 "github.com/charmbracelet/fantasy/ai"
9 "github.com/charmbracelet/fantasy/anthropic"
10 "gopkg.in/dnaeon/go-vcr.v4/pkg/recorder"
11)
12
13func TestAnthropicCommon(t *testing.T) {
14 testCommon(t, []builderPair{
15 {"claude-sonnet-4", builderAnthropicClaudeSonnet4, nil},
16 })
17}
18
19func builderAnthropicClaudeSonnet4(r *recorder.Recorder) (ai.LanguageModel, error) {
20 provider := anthropic.New(
21 anthropic.WithAPIKey(os.Getenv("ANTHROPIC_API_KEY")),
22 anthropic.WithHTTPClient(&http.Client{Transport: r}),
23 )
24 return provider.LanguageModel("claude-sonnet-4-20250514")
25}