test: avoid spawning cli help in metadata test

This commit is contained in:
Peter Steinberger
2026-05-06 05:48:16 +01:00
parent 963073088d
commit f2ce83833a
2 changed files with 21 additions and 4 deletions

View File

@@ -316,6 +316,9 @@ export async function writeCliStartupMetadata(options?: {
distDir?: string;
outputPath?: string;
extensionsDir?: string;
renderBundledRootHelpText?: typeof renderBundledRootHelpText;
renderSourceRootHelpText?: typeof renderSourceRootHelpText;
renderSourceBrowserHelpText?: typeof renderSourceBrowserHelpText;
}): Promise<void> {
const resolvedDistDir = options?.distDir ?? distDir;
const resolvedOutputPath = options?.outputPath ?? outputPath;
@@ -352,11 +355,16 @@ export async function writeCliStartupMetadata(options?: {
let rootHelpText: string;
try {
rootHelpText = await renderBundledRootHelpText(resolvedDistDir, renderContext);
rootHelpText = await (options?.renderBundledRootHelpText ?? renderBundledRootHelpText)(
resolvedDistDir,
renderContext,
);
} catch {
rootHelpText = renderSourceRootHelpText(renderContext);
rootHelpText = (options?.renderSourceRootHelpText ?? renderSourceRootHelpText)(renderContext);
}
const browserHelpText = renderSourceBrowserHelpText(renderContext);
const browserHelpText = (options?.renderSourceBrowserHelpText ?? renderSourceBrowserHelpText)(
renderContext,
);
mkdirSync(resolvedDistDir, { recursive: true });
writeFileSync(

View File

@@ -29,7 +29,16 @@ describe("write-cli-startup-metadata", () => {
"utf8",
);
await writeCliStartupMetadata({ distDir, outputPath, extensionsDir });
await writeCliStartupMetadata({
distDir,
outputPath,
extensionsDir,
renderBundledRootHelpText: async () => {
throw new Error("dist root help unavailable");
},
renderSourceRootHelpText: () => "Usage: openclaw\n",
renderSourceBrowserHelpText: () => "Usage: openclaw browser\n",
});
const written = JSON.parse(readFileSync(outputPath, "utf8")) as {
browserHelpText: string;