Files
Enterprise-Knowledge-Base/internal/models/chat/llm_debug_image_test.go
T
2026-07-16 00:17:16 +08:00

28 lines
713 B
Go

package chat
import (
"strings"
"testing"
)
func TestBuildLLMMessagesRedactsMultiContentImageURL(t *testing.T) {
secret := "TOPSECRETBASE64"
messages := buildLLMMessages([]Message{{
Role: "user",
MultiContent: []MessageContentPart{{
Type: "image_url",
ImageURL: &ImageURL{URL: "data:image/png;base64," + secret},
}},
}})
if len(messages) != 1 {
t.Fatalf("messages length = %d", len(messages))
}
got := messages[0].Content
if strings.Contains(got, secret) || strings.Contains(strings.ToLower(got), "data:image") {
t.Fatalf("buildLLMMessages leaked image URL: %q", got)
}
if !strings.Contains(got, "redacted") {
t.Fatalf("buildLLMMessages missing redaction marker: %q", got)
}
}