Files
digital-psychology/apps/api/internal/ask/reply_test.go
T
jackyu66gitandCursor 7ab9add5dd
ci / h5 (push) Canceled after 0s
ci / api (push) Canceled after 0s
ci / ess-docs (push) Canceled after 0s
feat(ops): ECR-007 行为分析与 ECR-008 内容运营后台
落地埋点 ingest/数据看板、首页宫格 CMS 与测评上下架;含账号引导、问答流式与免责声明去重,以及 review P1 审计同事务修复。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 02:26:16 +08:00

41 lines
1.1 KiB
Go

package ask
import (
"strings"
"testing"
"time"
)
func TestBuildReply_profileAware(t *testing.T) {
birth := time.Date(1990, 5, 12, 0, 0, 0, 0, time.UTC)
out := BuildReply(ReplyInput{
DisplayName: "我",
BirthDate: birth,
Relation: "self",
Scene: "self",
UserMessage: "我想更了解自己",
})
if !strings.Contains(out, "我") {
t.Fatalf("expected name in reply: %s", out)
}
if strings.Contains(out, "算命") || strings.Contains(out, "运势") || strings.Contains(out, "吉凶") {
t.Fatalf("forbidden lexicon in reply: %s", out)
}
if strings.Contains(out, "不构成医疗") || strings.Contains(out, "占卜预测") {
t.Fatalf("disclaimer should stay in UI only: %s", out)
}
}
func TestBuildReply_relationFocus(t *testing.T) {
birth := time.Date(1992, 8, 1, 0, 0, 0, 0, time.UTC)
out := BuildReply(ReplyInput{
DisplayName: "TA",
BirthDate: birth,
Relation: "other",
UserMessage: "和伴侣沟通总是卡住怎么办",
})
if !strings.Contains(out, "关系") && !strings.Contains(out, "相处") && !strings.Contains(out, "复述") {
t.Fatalf("expected relation-oriented reply: %s", out)
}
}