feat(framework): config 调试 serverOverride(全链路+游戏服连本地)
- DebugProfile 加 serverOverride:debug 抓远程配置走全链路后把连接地址覆盖为此 - staging profile 加 serverOverride=ws://127.0.0.1:3088(联调本地测试服) - release 一律忽略 serverOverride,用远程解析结果 - 同步指南 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -89,6 +89,20 @@ test('release:原生身份仍生效(URL 的 999 无效)', async () => {
|
||||
assert.equal(r.identity.channelid, 'NC');
|
||||
});
|
||||
|
||||
test('debug + serverOverride:走远程全链路但连接地址覆盖为本地', async () => {
|
||||
const fetcher = fetcherReturning(REMOTE); // REMOTE.player_server_tcp = 5.5.5.5:5000
|
||||
const r = await resolveBootstrap({ mode: 'debug', win: {}, search: '?profile=staging', fetcher, isNative: false });
|
||||
assert.deepEqual(r.servers, [PROFILES.staging.serverOverride]); // 覆盖为 profile.serverOverride
|
||||
assert.ok(r.rawConfig); // 远程配置仍抓取(全链路)
|
||||
assert.equal(fetcher.calls.length, 1);
|
||||
});
|
||||
|
||||
test('release:serverOverride 不生效(强制 prod,用远程解析地址)', async () => {
|
||||
const fetcher = fetcherReturning(REMOTE);
|
||||
const r = await resolveBootstrap({ mode: 'release', win: {}, search: '?profile=staging', fetcher, isNative: true });
|
||||
assert.deepEqual(r.servers, ['ws://5.5.5.5:5000']); // prod 无 override,用远程解析
|
||||
});
|
||||
|
||||
test('debug:account 来自当前 profile', async () => {
|
||||
const fetcher = fetcherReturning(REMOTE);
|
||||
const r = await resolveBootstrap({ mode: 'debug', win: {}, search: '?profile=staging', fetcher, isNative: false });
|
||||
|
||||
Reference in New Issue
Block a user