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 } // ClearDocumentGovernanceForTest 去掉账本,让阶段编排测试只覆盖小队产出。 // 受控任务仍须带 ProjectID,否则 ExecuteTask 会拒绝未绑定项目。 func ClearDocumentGovernanceForTest(s *Service) { if s == nil { return } s.docGov = nil s.docRev = nil }