test: account plugin repair outcomes

This commit is contained in:
Shakker
2026-05-12 20:46:39 +01:00
parent c5a227163e
commit 3a37bb717c

View File

@@ -980,11 +980,11 @@ describe("repairMissingConfiguredPluginInstalls", () => {
expect(mocks.updateNpmInstalledPlugins).toHaveBeenCalledTimes(1);
expect(result.warnings).toEqual([]);
expect(result.changes).toEqual(
expect.arrayContaining([
expect.stringContaining('Repaired missing configured plugin "discord"'),
]),
);
expect(result.changes[0]).toBe('Repaired missing configured plugin "discord".');
expectRecordFields(result.records.discord, {
source: "npm",
installPath: "/repaired/discord",
});
});
it("defers channel-selected external payload repair during the package update doctor pass", async () => {
@@ -1352,12 +1352,22 @@ describe("repairMissingConfiguredPluginInstalls", () => {
expect(mockCallArg(mocks.writePersistedInstalledPluginIndexInstallRecords, 0, 1)).toEqual({
env,
});
expect(result).toMatchObject({
changes: [
`Installed missing configured plugin "codex" from ${expectedNpmInstallSpec("@openclaw/codex")}.`,
],
warnings: [],
expect(result.changes).toEqual([
`Installed missing configured plugin "codex" from ${expectedNpmInstallSpec("@openclaw/codex")}.`,
]);
expect(result.warnings).toEqual([]);
expect(Object.keys(result.records)).toEqual(["codex"]);
expectRecordFields(result.records.codex, {
source: "npm",
spec: "@openclaw/codex",
installPath: "/tmp/openclaw-plugins/codex",
version: "2026.5.2",
resolvedName: "@openclaw/codex",
resolvedSpec: "@openclaw/codex@2026.5.2",
integrity: "sha512-codex",
resolvedAt: "2026-05-01T00:00:00.000Z",
});
expect(typeof result.records.codex?.installedAt).toBe("string");
});
it.each([
@@ -2026,9 +2036,16 @@ describe("repairMissingConfiguredPluginInstalls", () => {
expect(mockCallArg(mocks.writePersistedInstalledPluginIndexInstallRecords, 0, 1)).toEqual({
env: {},
});
expect(result).toMatchObject({
expect(result).toEqual({
changes: ['Repaired missing configured plugin "discord".'],
warnings: [],
records: {
discord: {
source: "npm",
spec: "@openclaw/discord",
installPath: process.cwd(),
},
},
});
});