fix(realname): 增加身份证唯一性校验,防止同一证件重复实名
This commit is contained in:
@@ -204,6 +204,28 @@ func TestManualRealnameRejectsVerifiedUser(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestManualRealnameRejectsIdentityUsedByAnotherUser(t *testing.T) {
|
||||
db := setupAdminUserTestDB(t)
|
||||
first := model.User{Phone: "13900000011", Nickname: "用户一", Status: "active"}
|
||||
second := model.User{Phone: "13900000012", Nickname: "用户二", Status: "active"}
|
||||
if err := db.Create(&first).Error; err != nil {
|
||||
t.Fatalf("创建用户一失败:%v", err)
|
||||
}
|
||||
if err := db.Create(&second).Error; err != nil {
|
||||
t.Fatalf("创建用户二失败:%v", err)
|
||||
}
|
||||
repo := NewRepository(db)
|
||||
repo.SetRealnameIDHashKey("test-realname-id-hash-key")
|
||||
req := ManualRealnameRequest{Name: "周奕男", IDNo: "130682200604080615"}
|
||||
|
||||
if _, err := repo.ManualRealname(t.Context(), 99, first.ID, req, AuditMeta{}); err != nil {
|
||||
t.Fatalf("用户一人工实名失败:%v", err)
|
||||
}
|
||||
if _, err := repo.ManualRealname(t.Context(), 99, second.ID, req, AuditMeta{}); !errors.Is(err, ErrRealnameIDNoUsed) {
|
||||
t.Fatalf("同一身份证人工实名第二账号 error = %v, want ErrRealnameIDNoUsed", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestAdjustWalletDebitAndAudit(t *testing.T) {
|
||||
db := setupAdminUserTestDB(t)
|
||||
user := model.User{
|
||||
|
||||
Reference in New Issue
Block a user