fix: 统一顺运宝单条采集客户端选择 (#174)

This commit is contained in:
chengma
2026-08-12 09:56:15 +08:00
parent 6127551a7b
commit f693d2a6fc
5 changed files with 98 additions and 4 deletions
+35
View File
@@ -6,6 +6,7 @@ import (
"strings"
"testing"
"cmautobuy/admin/model"
"cmautobuy/admin/service"
)
@@ -87,3 +88,37 @@ func TestSybListTemplate_区分标题图片与阶段动作(t *testing.T) {
t.Error("顺运宝列表不应继续使用含义模糊的整行双击入口")
}
}
func TestSybDetailTemplate_单条采集可选执行客户端(t *testing.T) {
tmpl, err := template.ParseFS(templateFS, "templates/*/*.html")
if err != nil {
t.Fatal(err)
}
data := map[string]any{
"D": &service.SybProcessingDetail{
SybID: "SYB-1", OrderNo: "ORDER-1", Title: "待采集商品",
PddGoodsID: "737116531267", CanCollect: true,
},
"CSRFToken": "test-csrf",
"AssignableClients": []service.ClientView{{
Client: model.Client{ClientID: "CLIENT-1", Name: "仓库手机"}, Status: "在线",
}},
}
var output bytes.Buffer
if err := tmpl.ExecuteTemplate(&output, "syb/detail_modal", data); err != nil {
t.Fatalf("渲染顺运宝详情失败: %v", err)
}
body := output.String()
for _, want := range []string{
`action="/syb/collect-pdd"`,
`label for="syb-detail-collect-client"`,
`select id="syb-detail-collect-client" name="client_id"`,
`option value="">不指定(任意客户端可领取)`,
`option value="CLIENT-1">仓库手机(CLIENT-1,在线)`,
`指定后任务只等待该客户端领取`,
} {
if !strings.Contains(body, want) {
t.Errorf("顺运宝详情缺少 %q", want)
}
}
}