test(sms): 修正重试用例因 DATETIME(0) 取整导致的时间敏感失败
updated_at 为 DATETIME(0),写库会把小数秒向上取整到下一秒,退避设为 0 时刚失败的记录会被 取数条件 updated_at <= now-退避 取不到,导致 TestDispatchRetriesThenFails 必挂;退避量改为 -2s 保证连续重试可确定执行。
This commit is contained in:
@@ -297,8 +297,10 @@ func TestDispatchRetriesThenFails(t *testing.T) {
|
||||
sms.NodeOrderHandoffAssist: {Enabled: true, TemplateCode: "SMS_512540945"},
|
||||
})}
|
||||
job := New(db, nil, zap.NewNop(), mainProvider, "大锤商行", reader, nil)
|
||||
// 退避设为 0,便于在测试内连续重试。
|
||||
job.retryDelay = 0
|
||||
// 退避设为负值,便于在测试内连续重试。
|
||||
// updated_at 是 DATETIME(0),写库时小数秒会向上取整到下一秒(如 .690 → 下一秒),
|
||||
// 若把退避设为 0,刚失败的记录会被取数条件 updated_at <= now-退避 误判为「仍在退避中」而取不到。
|
||||
job.retryDelay = -2 * time.Second
|
||||
|
||||
row := seedPending(t, db, model.SmsMessage{
|
||||
UserID: 7,
|
||||
|
||||
Reference in New Issue
Block a user