\Tests\FeaturePerfBatchTest

筛选助手与字典 BFS 删除

被测对象:ConfigRoleService::paginate(公共筛选助手)+ DataDictService::deleteData(BFS 后代删除) 守护约定:名称/编码搜索 + 状态筛选组合生效;字典后代 BFS 批量删除(常数级查询); seen 集保证环上终止不删除死循环。

Summary

Methods
Properties
Constants
test_role_paginate_filters_via_shared_helpers()
test_dict_delete_recursive_uses_bfs_bulk_delete()
test_dict_descendant_collection_terminates_on_cycle()
No public properties found
No constants found
requireRedis()
buildCacheRegistry()
setUp()
No protected properties found
N/A
seedDictTree()
No private properties found
N/A

Methods

test_role_paginate_filters_via_shared_helpers()

test_role_paginate_filters_via_shared_helpers() : void

验证角色分页经公共筛选助手组合名称搜索与状态筛选。

test_dict_delete_recursive_uses_bfs_bulk_delete()

test_dict_delete_recursive_uses_bfs_bulk_delete() : void

验证字典递归删除走 BFS 批量删除(常数级查询)。

test_dict_descendant_collection_terminates_on_cycle()

test_dict_descendant_collection_terminates_on_cycle() : void

验证字典后代收集在成环时终止(seen 集防死循环)。

requireRedis()

requireRedis() : void

Redis 依赖探针:直连 Redis 的测试(限流/会话/验证码)在无 Redis 环境(如 CI) 跳过而非失败——其余用例不受影响。CI 可设 TEST_REQUIRE_REDIS=1 强制模式: Redis 不可达即失败而非跳过,安全回归套件不允许静默消失。

buildCacheRegistry()

buildCacheRegistry(array  $items) : void

建缓存注册表最小 schema(td_sys_cache)并灌入注册项。

测试跑 sqlite :memory:,生产迁移含 PostgreSQL 专属 DDL 跑不通(DataScopeServiceTest 同因自建 schema); 而 CacheManager::registry() 现已从数据库表读取——凡走注册表的测试(remember/get/key/失效推导) 必须在 setUp 先调用本方法,否则注册表为空、remember 未登记名会走「自动登记」路径。

Parameters

array $items

setUp()

setUp() : void

seedDictTree()

seedDictTree() : \App\Models\SysDictData

Returns

\App\Models\SysDictData —