feat: 新增监控页面、部门管理占位与单元测试

- 新增系统监控模块(在线用户、定时任务、数据监控、服务器监控、缓存监控)
- 新增部门管理占位页面
- 路由注册新增模块与懒加载
- DefaultLayout 侧边菜单与布局优化
- 新增前端单元测试与后端 RoleUpdateRequest 测试
This commit is contained in:
张翔
2026-05-06 14:18:17 +08:00
committed by zhangxiang
parent e8f51309e5
commit 3e8e14d662
30 changed files with 2071 additions and 4 deletions
@@ -0,0 +1,68 @@
package cn.novalon.manage.sys.dto.request;
import jakarta.validation.Validation;
import jakarta.validation.Validator;
import jakarta.validation.ValidatorFactory;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class RoleUpdateRequestTest {
private static Validator validator;
@BeforeAll
static void setUp() {
try (ValidatorFactory factory = Validation.buildDefaultValidatorFactory()) {
validator = factory.getValidator();
}
}
@Test
void testRoleSortGreaterThanZero() {
RoleUpdateRequest request = new RoleUpdateRequest();
request.setRoleSort(1);
var violations = validator.validateProperty(request, "roleSort");
assertTrue(violations.isEmpty(), "roleSort=1 should pass validation");
}
@Test
void testRoleSortZeroFails() {
RoleUpdateRequest request = new RoleUpdateRequest();
request.setRoleSort(0);
var violations = validator.validateProperty(request, "roleSort");
assertFalse(violations.isEmpty(), "roleSort=0 should fail validation");
assertEquals("显示顺序必须大于0", violations.iterator().next().getMessage());
}
@Test
void testRoleSortNegativeFails() {
RoleUpdateRequest request = new RoleUpdateRequest();
request.setRoleSort(-1);
var violations = validator.validateProperty(request, "roleSort");
assertFalse(violations.isEmpty(), "roleSort=-1 should fail validation");
assertEquals("显示顺序必须大于0", violations.iterator().next().getMessage());
}
@Test
void testRoleSortNullPasses() {
RoleUpdateRequest request = new RoleUpdateRequest();
request.setRoleSort(null);
var violations = validator.validateProperty(request, "roleSort");
assertTrue(violations.isEmpty(), "roleSort=null should pass validation (optional field)");
}
@Test
void testRoleSortLargeValue() {
RoleUpdateRequest request = new RoleUpdateRequest();
request.setRoleSort(Integer.MAX_VALUE);
var violations = validator.validateProperty(request, "roleSort");
assertTrue(violations.isEmpty(), "roleSort=MAX_VALUE should pass validation");
}
}