MCPcopy Create free account
hub / github.com/astercloud/aster / TestNewTelemetryMiddleware

Function TestNewTelemetryMiddleware

pkg/middleware/telemetry_test.go:13–59  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

11)
12
13func TestNewTelemetryMiddleware(t *testing.T) {
14 tests := []struct {
15 name string
16 config *TelemetryMiddlewareConfig
17 }{
18 {
19 name: "nil config",
20 config: nil,
21 },
22 {
23 name: "basic config",
24 config: &TelemetryMiddlewareConfig{
25 AgentID: "test-agent",
26 AgentName: "Test Agent",
27 Provider: genai.ProviderAnthropic,
28 Model: "claude-3-5-sonnet",
29 },
30 },
31 {
32 name: "full config",
33 config: &TelemetryMiddlewareConfig{
34 AgentID: "test-agent",
35 AgentName: "Test Agent",
36 Provider: genai.ProviderOpenAI,
37 Model: "gpt-4",
38 ConversationID: "conv-123",
39 RecordPrompts: true,
40 RecordCompletions: true,
41 },
42 },
43 }
44
45 for _, tt := range tests {
46 t.Run(tt.name, func(t *testing.T) {
47 m := NewTelemetryMiddleware(tt.config)
48 if m == nil {
49 t.Fatal("expected middleware to be created")
50 }
51 if m.Name() != "telemetry" {
52 t.Errorf("expected name 'telemetry', got '%s'", m.Name())
53 }
54 if m.Priority() != 5 {
55 t.Errorf("expected priority 5, got %d", m.Priority())
56 }
57 })
58 }
59}
60
61func TestTelemetryMiddleware_WrapModelCall(t *testing.T) {
62 tracer := telemetry.NewSimpleTracer()

Callers

nothing calls this directly

Calls 4

NewTelemetryMiddlewareFunction · 0.85
NameMethod · 0.65
PriorityMethod · 0.65
RunMethod · 0.45

Tested by

no test coverage detected