refactor(core): 统一参数命名 - worldId/sceneId 改为 worldName/sceneName (#225)

* refactor(core): 统一参数命名 - worldId/sceneId 改为 worldName/sceneName

* test(core): 更新测试用例以匹配新的错误消息

* refactor(core): 提高代码覆盖率 - 添加参数验证和测试
This commit is contained in:
YHH
2025-11-15 00:20:17 +08:00
committed by GitHub
parent af49870084
commit eac660b1a0
6 changed files with 116 additions and 84 deletions

View File

@@ -152,14 +152,24 @@ describe('World', () => {
expect(world.sceneCount).toBe(1);
});
test('空的Scene name应该抛出错误', () => {
expect(() => {
world.createScene('');
}).toThrow('Scene name不能为空');
expect(() => {
world.createScene(' ');
}).toThrow('Scene name不能为空');
});
test('重复的Scene ID应该抛出错误', () => {
world.createScene('duplicate');
expect(() => {
world.createScene('duplicate');
}).toThrow("Scene ID 'duplicate' 已存在于World 'TestWorld' 中");
}).toThrow("Scene name 'duplicate' 已存在于World 'TestWorld' 中");
});
test('超出最大Scene数量限制应该抛出错误', () => {
const limitedWorld = new World({ maxScenes: 2 });
@@ -488,10 +498,10 @@ describe('World', () => {
});
describe('错误处理', () => {
test('Scene ID为空时应该创建默认ID', () => {
test('Scene name为空时应该抛出错误', () => {
expect(() => {
world.createScene('');
}).not.toThrow();
}).toThrow('Scene name不能为空');
});
test('极限情况下的资源管理', () => {

View File

@@ -109,12 +109,22 @@ describe('WorldManager', () => {
expect(world.name).toBe('configured-world');
});
test('空的World name应该抛出错误', () => {
expect(() => {
worldManager.createWorld('');
}).toThrow('World name不能为空');
expect(() => {
worldManager.createWorld(' ');
}).toThrow('World name不能为空');
});
test('重复的World ID应该抛出错误', () => {
worldManager.createWorld('duplicate-world');
expect(() => {
worldManager.createWorld('duplicate-world');
}).toThrow("World ID 'duplicate-world' 已存在");
}).toThrow("World name 'duplicate-world' 已存在");
});
test('超出最大World数量应该抛出错误', () => {

View File

@@ -198,6 +198,14 @@ describe('DebugPlugin', () => {
const results = debugPlugin.queryEntities({ tag: 999 });
expect(results.length).toBe(0);
});
it('应该能够按 sceneName 过滤实体', () => {
// 查询特定场景的实体
const results = debugPlugin.queryEntities({ sceneName: 'test-scene' });
// 应该返回 test-scene 中的所有实体Player, Enemy, Item
expect(results.length).toBe(3);
});
});
describe('监控功能', () => {