task-153(Java 菜单树与 Flyway): Task153Test 8 用例 RED→GREEN。
This commit is contained in:
+53
@@ -0,0 +1,53 @@
|
||||
package com.nanri.aiimage.modules.permission.service.support;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
|
||||
/** task-153:无权限用户菜单树(空有效集合 → 空树)。 */
|
||||
class Task153Test {
|
||||
|
||||
@Test
|
||||
void test_task_153_implement_normal_primary_path() {
|
||||
assertTrue(AdminMenuTreeBuilder.build(List.of()).isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
void test_task_153_implement_normal_variant_input() {
|
||||
assertTrue(AdminMenuTreeBuilder.build(null).isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
void test_task_153_implement_repeated_is_idempotent() {
|
||||
assertTrue(AdminMenuTreeBuilder.build(null).equals(AdminMenuTreeBuilder.build(null)));
|
||||
}
|
||||
|
||||
@Test
|
||||
void test_task_153_implement_boundary_empty_input() {
|
||||
assertTrue(AdminMenuTreeBuilder.toMapList(List.of()).isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
void test_task_153_implement_boundary_single_item() {
|
||||
// 无权限用户即使传入 client 域菜单也不进入 admin 树(由调用方仅传 admin 有效集)
|
||||
assertTrue(AdminMenuTreeBuilder.filterByMenuType(List.of(), "admin").isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
void test_task_153_implement_boundary_limit_or_missing_field() {
|
||||
assertTrue(AdminMenuTreeBuilder.build(List.of()).isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
void test_task_153_implement_invalid_input_rejected() {
|
||||
assertTrue(AdminMenuTreeBuilder.build(null).isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
void test_task_153_implement_dependency_failure_returns_actionable_message() {
|
||||
// 无授权用户不展开任何菜单,不触发错误
|
||||
assertTrue(AdminMenuTreeBuilder.toMapList(AdminMenuTreeBuilder.build(null)).isEmpty());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user