Files
ai-agent/internal/ai/runtime/reply_runlog_service_test.go
T
mlogclub 101577f163 Refactor internal services to use agent-desk package structure
- Updated import paths in multiple service files to reflect the new agent-desk module.
- Added a new configuration file for agent-desk in the Docker setup.
2026-05-31 18:43:48 +08:00

58 lines
1.4 KiB
Go

package runtime
import (
"strings"
"testing"
"time"
"agent-desk/internal/models"
"agent-desk/internal/pkg/enums"
"github.com/glebarez/sqlite"
"github.com/mlogclub/simple/sqls"
"gorm.io/gorm"
"gorm.io/gorm/schema"
)
func TestReplyRunLogStoresRequestID(t *testing.T) {
dbName := "reply_runlog_trace_test_" + strings.NewReplacer("/", "_").Replace(t.Name())
db, err := gorm.Open(sqlite.Open("file:"+dbName+"?mode=memory&cache=shared"), &gorm.Config{
NamingStrategy: schema.NamingStrategy{
TablePrefix: "t_",
SingularTable: true,
},
})
if err != nil {
t.Fatalf("open sqlite db: %v", err)
}
sqlDB, err := db.DB()
if err != nil {
t.Fatalf("get sqlite db: %v", err)
}
t.Cleanup(func() {
if err := sqlDB.Close(); err != nil {
t.Fatalf("close sqlite db: %v", err)
}
})
if err := db.AutoMigrate(&models.AgentRunLog{}); err != nil {
t.Fatalf("auto migrate: %v", err)
}
sqls.SetDB(db)
newReplyRunLogService().Write(replyRunLogInput{
StartedAt: time.Now(),
Message: models.Message{ID: 22, RequestID: "trace-123", SenderType: enums.IMSenderTypeCustomer, Content: "hello"},
Conversation: models.Conversation{ID: 11},
AIAgent: models.AIAgent{ID: 33, AIConfigID: 44},
Question: "hello",
})
var item models.AgentRunLog
if err := db.First(&item).Error; err != nil {
t.Fatalf("find run log: %v", err)
}
if item.RequestID != "trace-123" {
t.Fatalf("RequestID=%q want %q", item.RequestID, "trace-123")
}
}