mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-12 18:26:03 +00:00
fix(e2e): preserve Windows config shape during updates
This commit is contained in:
@@ -846,6 +846,11 @@ exit 7
|
||||
|
||||
it("scrubs future plugin entries before invoking old same-guest updaters", () => {
|
||||
const script = readFileSync(UPDATE_SCRIPTS_PATH, "utf8");
|
||||
const windowsScript = windowsUpdateScript({
|
||||
auth: TEST_AUTH,
|
||||
expectedNeedle: "2026.5.3-beta.2",
|
||||
updateTarget: "2026.5.3-beta.2",
|
||||
});
|
||||
const macosScript = macosUpdateScript({
|
||||
auth: TEST_AUTH,
|
||||
expectedNeedle: "2026.5.3-beta.2",
|
||||
@@ -856,9 +861,18 @@ exit 7
|
||||
expect(script).toContain("scrub_future_plugin_entries");
|
||||
expect(script).toContain("delete plugins.entries.feishu");
|
||||
expect(script).toContain("delete plugins.entries.whatsapp");
|
||||
expect(script).toContain("if ($null -ne $allow)");
|
||||
expect(script).not.toContain("if ($allow -is [array])");
|
||||
expect(script).toContain("Remove-FuturePluginEntries\nStop-OpenClawGatewayProcesses");
|
||||
expect(windowsScript).toContain(
|
||||
'const futurePluginIds = new Set(["feishu", "whatsapp", "openai"])',
|
||||
);
|
||||
expect(windowsScript).toContain('replace(/^\\uFEFF/u, "")');
|
||||
expect(windowsScript).toContain("if (allow.length !== plugins.allow.length)");
|
||||
expect(windowsScript).toContain('JSON.stringify(config, null, 2) + "\\n"');
|
||||
expect(windowsScript).not.toContain("ConvertTo-Json -Depth 100");
|
||||
expect(windowsScript).toContain("& node.exe $nodeScriptPath $configPath");
|
||||
expect(windowsScript).toContain(
|
||||
"Remove-Item $nodeScriptPath -Force -ErrorAction SilentlyContinue",
|
||||
);
|
||||
expect(windowsScript).toContain("Remove-FuturePluginEntries\nStop-OpenClawGatewayProcesses");
|
||||
expect(script).toContain("scrub_future_plugin_entries\nstop_openclaw_gateway_processes");
|
||||
expect(script).toContain("Invoke-WithScopedEnv @{ OPENCLAW_DISABLE_BUNDLED_PLUGINS = '1'");
|
||||
expect(macosScript).toContain('OPENCLAW_BIN="$(resolve_required_command openclaw)"');
|
||||
|
||||
@@ -1399,9 +1399,10 @@ if (isPrlctl) {
|
||||
const script = readFileSync(TS_PATHS.npmUpdateScripts, "utf8");
|
||||
|
||||
expect(script).not.toContain("ConvertFrom-Json -AsHashtable");
|
||||
expect(script).toContain("function Get-OpenClawJsonProperty");
|
||||
expect(script).toContain("function Remove-OpenClawJsonProperty");
|
||||
expect(script).toContain("Remove-OpenClawJsonProperty $entries $pluginId");
|
||||
expect(script).not.toContain("ConvertTo-Json -Depth 100");
|
||||
expect(script).toContain('replace(/^\\\\uFEFF/u, "")');
|
||||
expect(script).toContain("$nodeScript | Set-Content -Path $nodeScriptPath -Encoding UTF8");
|
||||
expect(script).toContain("& node.exe $nodeScriptPath $configPath");
|
||||
});
|
||||
|
||||
it("keeps aggregate update guest scripts isolated from the npm-update orchestrator", () => {
|
||||
|
||||
Reference in New Issue
Block a user