Files
ai-agent/internal/ai/rag/retrieve_test.go
T
t 2bbf42b741 refactor(auth): delegate access control to be-system
Remove Agent Desk users, roles, login sessions, tokens, and local permission persistence. Expose the backend as an embeddable ai-agent module with host-provided subject lookup and operation authorization callbacks, and complete the frontend/backend repository split.
2026-08-21 00:41:07 +08:00

50 lines
1.3 KiB
Go

package rag
import (
"testing"
"code.tczkiot.com/wlw/ai-agent/internal/models"
)
func TestResolveKnowledgeBaseSearchOptionsUsesKnowledgeBaseDefaults(t *testing.T) {
topK, scoreThreshold := resolveKnowledgeBaseSearchOptions(RetrieveRequest{}, &models.KnowledgeBase{
DefaultTopK: 6,
DefaultScoreThreshold: 0.42,
})
if topK != 6 {
t.Fatalf("expected topK 6, got %d", topK)
}
if scoreThreshold != float32(0.42) {
t.Fatalf("expected score threshold 0.42, got %v", scoreThreshold)
}
}
func TestResolveKnowledgeBaseSearchOptionsRequestOverridesKnowledgeBaseDefaults(t *testing.T) {
topK, scoreThreshold := resolveKnowledgeBaseSearchOptions(RetrieveRequest{
TopK: 9,
ScoreThreshold: 0.55,
}, &models.KnowledgeBase{
DefaultTopK: 6,
DefaultScoreThreshold: 0.42,
})
if topK != 9 {
t.Fatalf("expected request topK 9, got %d", topK)
}
if scoreThreshold != float32(0.55) {
t.Fatalf("expected request score threshold 0.55, got %v", scoreThreshold)
}
}
func TestResolveKnowledgeBaseSearchOptionsUsesSystemDefaults(t *testing.T) {
topK, scoreThreshold := resolveKnowledgeBaseSearchOptions(RetrieveRequest{}, nil)
if topK != 8 {
t.Fatalf("expected fallback topK 8, got %d", topK)
}
if scoreThreshold != float32(0.3) {
t.Fatalf("expected fallback score threshold 0.3, got %v", scoreThreshold)
}
}