Boot memory IAM only via explicit test env opt-in; strict auth cases disable AllowInMemory after startup. Co-authored-by: Cursor <cursoragent@cursor.com>
32 lines
648 B
Go
32 lines
648 B
Go
package bizdev
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"chat-agent-system/internal/config"
|
|
)
|
|
|
|
// MustNewService 测试辅助:允许内存降级,连接失败时不 fatal(除非显式需要 DB)。
|
|
func MustNewService(t testing.TB, cfg *config.Config) *Service {
|
|
t.Helper()
|
|
if cfg == nil {
|
|
cfg = &config.Config{DataDir: t.TempDir(), AgentBackend: "stub"}
|
|
}
|
|
if cfg.ContextDbHost != "" {
|
|
svc, err := NewService(cfg)
|
|
if err != nil {
|
|
t.Fatalf("NewService: %v", err)
|
|
}
|
|
return svc
|
|
}
|
|
cfg.AllowInMemory = true
|
|
if cfg.Env == "" {
|
|
cfg.Env = "test"
|
|
}
|
|
svc, err := NewService(cfg)
|
|
if err != nil {
|
|
t.Fatalf("NewService: %v", err)
|
|
}
|
|
return svc
|
|
}
|