fix(config): restore legacy gameserver and urlserver contract

This commit is contained in:
2026-09-05 01:25:50 +08:00
parent f25211c64e
commit d1ad63983b
16 changed files with 622 additions and 383 deletions
@@ -36,3 +36,22 @@ test('resolveIdentity:marketid=0 是有效值,应覆盖', () => {
const id = resolveIdentity([() => BUILD_IDENTITY, () => ({ marketid: 0 })]);
assert.equal(id.marketid, 0);
});
test('resolveIdentity:不完整身份显式拒绝,完整结果被冻结', () => {
assert.throws(
() => resolveIdentity([() => ({ gameid: 'G', version: 1 })]),
/identity.*agentid.*channelid.*marketid/i,
);
assert.equal(Object.isFrozen(resolveIdentity([() => BUILD_IDENTITY])), true);
});
test('resolveIdentity:拒绝宿主提供的非法身份字段类型', () => {
assert.throws(
() => resolveIdentity([() => ({ ...BUILD_IDENTITY, agentid: true as any })]),
/identity.*agentid.*type/i,
);
assert.throws(
() => resolveIdentity([() => ({ ...BUILD_IDENTITY, version: Number.NaN })]),
/identity.*version.*type/i,
);
});