补充 dev:all 启动摘要表
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust smoke (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust smoke (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled
在 AGC Vite marker 就绪后打印全部服务的实际地址表。 补充 AGC 就绪等待、摘要构造测试和开发运维文档。
This commit is contained in:
+29
-1
@@ -9,6 +9,7 @@ import {
|
||||
buildDevAllEnvironment,
|
||||
buildManagedSpawnOptions,
|
||||
buildRootDevArgs,
|
||||
buildStartupSummary,
|
||||
isSharedRootStackReady,
|
||||
runDevAll,
|
||||
validateDevAllArgs,
|
||||
@@ -92,6 +93,31 @@ describe('dev:all 参数和共享开发栈合同', () => {
|
||||
expect(options.detached).toBe(process.platform !== 'win32');
|
||||
});
|
||||
|
||||
test('按最终端口构造完整启动摘要表', () => {
|
||||
const rows = buildStartupSummary(makeReadyState(), {
|
||||
url: 'http://127.0.0.1:3080/',
|
||||
});
|
||||
|
||||
expect(rows).toHaveLength(7);
|
||||
expect(rows).toEqual(
|
||||
expect.arrayContaining([
|
||||
expect.objectContaining({
|
||||
项目: 'SpacetimeDB',
|
||||
状态: '已复用',
|
||||
地址: 'http://127.0.0.1:3101',
|
||||
}),
|
||||
expect.objectContaining({
|
||||
项目: 'Admin 后台',
|
||||
地址: 'http://127.0.0.1:3102/admin/',
|
||||
}),
|
||||
expect.objectContaining({
|
||||
项目: 'AGC Vite',
|
||||
地址: 'http://127.0.0.1:3080/',
|
||||
}),
|
||||
]),
|
||||
);
|
||||
});
|
||||
|
||||
test('仅接受同一工作树、实例、数据库和 data dir 的完整栈', () => {
|
||||
const root = resolve('fixture-root');
|
||||
const ready = makeReadyState(root);
|
||||
@@ -149,7 +175,9 @@ describe('dev:all 参数和共享开发栈合同', () => {
|
||||
}
|
||||
return child;
|
||||
},
|
||||
waitForRoot: async () => ({}),
|
||||
waitForRoot: async () => makeReadyState(),
|
||||
readState: () => null,
|
||||
waitForAgc: async () => true,
|
||||
stopProcessTree: async (child) => {
|
||||
stopCalls.push(child);
|
||||
if (child?.exitCode == null) {
|
||||
|
||||
Reference in New Issue
Block a user