Files
openclaw/src/gateway/server-methods/skills.update.normalizes-api-key.test.ts
2026-02-17 15:50:07 +09:00

54 lines
1.1 KiB
TypeScript

import { describe, expect, it, vi } from "vitest";
let writtenConfig: unknown = null;
vi.mock("../../config/config.js", () => {
return {
loadConfig: () => ({
skills: {
entries: {},
},
}),
writeConfigFile: async (cfg: unknown) => {
writtenConfig = cfg;
},
};
});
const { skillsHandlers } = await import("./skills.js");
describe("skills.update", () => {
it("strips embedded CR/LF from apiKey", async () => {
writtenConfig = null;
let ok: boolean | null = null;
let error: unknown = null;
await skillsHandlers["skills.update"]({
params: {
skillKey: "brave-search",
apiKey: "abc\r\ndef",
},
req: {} as never,
client: null as never,
isWebchatConnect: () => false,
context: {} as never,
respond: (success, _result, err) => {
ok = success;
error = err;
},
});
expect(ok).toBe(true);
expect(error).toBeUndefined();
expect(writtenConfig).toMatchObject({
skills: {
entries: {
"brave-search": {
apiKey: "abcdef",
},
},
},
});
});
});