oclaw/openclaw/test/scripts/ios-version.test-support.ts
oliver dbbe3add6a 重构主控编排与运行时预热链路,统一工作区提示词/专家调度协议并补齐 wiki 记忆注入与写回闭环。
同时收敛启动与运维脚本默认行为(含 wiki worker)、更新 Admin 可观测性与相关测试,降低首轮时延并提高运行稳定性。

Made-with: Cursor
2026-04-26 08:34:33 +08:00

49 lines
1.5 KiB
TypeScript

import fs from "node:fs";
import path from "node:path";
import { afterEach } from "vitest";
import { cleanupTempDirs, makeTempDir } from "../helpers/temp-dir.js";
const tempDirs: string[] = [];
export function installIosFixtureCleanup(): void {
afterEach(() => {
cleanupTempDirs(tempDirs);
});
}
export function writeIosFixture(params: {
version: string;
changelog: string;
packageVersion?: string;
releaseNotes?: string;
versionXcconfig?: string;
prefix?: string;
}): string {
const rootDir = makeTempDir(tempDirs, params.prefix ?? "openclaw-ios-version-");
fs.mkdirSync(path.join(rootDir, "apps", "ios", "Config"), { recursive: true });
fs.mkdirSync(path.join(rootDir, "apps", "ios", "fastlane", "metadata", "en-US"), {
recursive: true,
});
fs.writeFileSync(
path.join(rootDir, "package.json"),
`${JSON.stringify({ version: params.packageVersion ?? "2026.4.6" }, null, 2)}\n`,
"utf8",
);
fs.writeFileSync(
path.join(rootDir, "apps", "ios", "version.json"),
`${JSON.stringify({ version: params.version }, null, 2)}\n`,
"utf8",
);
fs.writeFileSync(path.join(rootDir, "apps", "ios", "CHANGELOG.md"), params.changelog, "utf8");
fs.writeFileSync(
path.join(rootDir, "apps", "ios", "Config", "Version.xcconfig"),
params.versionXcconfig ?? "",
"utf8",
);
fs.writeFileSync(
path.join(rootDir, "apps", "ios", "fastlane", "metadata", "en-US", "release_notes.txt"),
params.releaseNotes ?? "",
"utf8",
);
return rootDir;
}