Commit 975afd36f5bb1e8c74ba6105aeea38e75104381f
1 parent
cb7705e0
feat(usr): 新增登录限流错误码 42901 REQ-USR-004
Showing
2 changed files
with
30 additions
and
0 deletions
backend/src/main/java/com/xly/erp/common/response/ResultCode.java
| ... | ... | @@ -24,6 +24,8 @@ public enum ResultCode { |
| 24 | 24 | USERNAME_EXISTS(40901, "用户名已存在"), |
| 25 | 25 | /** 分页参数非法(预留 REQ-USR-003)。 */ |
| 26 | 26 | PAGE_PARAM_INVALID(42201, "分页参数非法"), |
| 27 | + /** 登录过于频繁(连续失败超阈值,账号临时锁定;REQ-USR-004)。 */ | |
| 28 | + LOGIN_RATE_LIMITED(42901, "请求过于频繁,请稍后重试"), | |
| 27 | 29 | /** 系统内部错误(兜底)。 */ |
| 28 | 30 | SYSTEM_ERROR(50000, "系统繁忙,请稍后重试"); |
| 29 | 31 | ... | ... |
backend/src/test/java/com/xly/erp/common/response/ResultCodeLoginTest.java
0 → 100644
| 1 | +package com.xly.erp.common.response; | |
| 2 | + | |
| 3 | +import static org.assertj.core.api.Assertions.assertThat; | |
| 4 | + | |
| 5 | +import org.junit.jupiter.api.Test; | |
| 6 | + | |
| 7 | +/** | |
| 8 | + * REQ-USR-004 T1:登录相关错误码断言。 | |
| 9 | + * | |
| 10 | + * <p>新增登录限流码 {@code LOGIN_RATE_LIMITED=42901};并确认登录流程复用的既有码 | |
| 11 | + * {@code UNAUTHORIZED=40101} / {@code ACCOUNT_DISABLED=40302} / {@code PARAM_INVALID=40001} | |
| 12 | + * 取值不变(不重复定义、不漂移)。</p> | |
| 13 | + */ | |
| 14 | +class ResultCodeLoginTest { | |
| 15 | + | |
| 16 | + @Test | |
| 17 | + void loginRateLimitedCodeIs42901() { | |
| 18 | + assertThat(ResultCode.LOGIN_RATE_LIMITED.getCode()).isEqualTo(42901); | |
| 19 | + assertThat(ResultCode.LOGIN_RATE_LIMITED.getMessage()).isNotBlank(); | |
| 20 | + } | |
| 21 | + | |
| 22 | + @Test | |
| 23 | + void existingLoginCodesPresent() { | |
| 24 | + assertThat(ResultCode.UNAUTHORIZED.getCode()).isEqualTo(40101); | |
| 25 | + assertThat(ResultCode.ACCOUNT_DISABLED.getCode()).isEqualTo(40302); | |
| 26 | + assertThat(ResultCode.PARAM_INVALID.getCode()).isEqualTo(40001); | |
| 27 | + } | |
| 28 | +} | ... | ... |