test(gateway): extend sessions RPC coverage

This commit is contained in:
Peter Steinberger
2025-12-13 16:36:09 +00:00
parent e654676148
commit 44f9327087

View File

@@ -1682,7 +1682,7 @@ describe("gateway server", () => {
{
main: {
sessionId: "sess-main",
updatedAt: now - 60_000,
updatedAt: now - 30_000,
inputTokens: 10,
outputTokens: 20,
thinkingLevel: "low",
@@ -1705,7 +1705,11 @@ describe("gateway server", () => {
);
const { server, ws } = await startServerWithClient();
await connectOk(ws);
const hello = await connectOk(ws);
expect(
(hello as unknown as { features?: { methods?: string[] } }).features
?.methods,
).toEqual(expect.arrayContaining(["sessions.list", "sessions.patch"]));
const list1 = await rpcReq<{
path: string;
@@ -1725,6 +1729,27 @@ describe("gateway server", () => {
expect(main?.thinkingLevel).toBe("low");
expect(main?.verboseLevel).toBe("on");
const active = await rpcReq<{
sessions: Array<{ key: string }>;
}>(ws, "sessions.list", {
includeGlobal: false,
includeUnknown: false,
activeMinutes: 1,
});
expect(active.ok).toBe(true);
expect(active.payload?.sessions.map((s) => s.key)).toEqual(["main"]);
const limited = await rpcReq<{
sessions: Array<{ key: string }>;
}>(ws, "sessions.list", {
includeGlobal: true,
includeUnknown: false,
limit: 1,
});
expect(limited.ok).toBe(true);
expect(limited.payload?.sessions).toHaveLength(1);
expect(limited.payload?.sessions[0]?.key).toBe("global");
const patched = await rpcReq<{ ok: true; key: string }>(
ws,
"sessions.patch",
@@ -1746,6 +1771,15 @@ describe("gateway server", () => {
expect(main2?.thinkingLevel).toBe("medium");
expect(main2?.verboseLevel).toBeUndefined();
const badThinking = await rpcReq(ws, "sessions.patch", {
key: "main",
thinkingLevel: "banana",
});
expect(badThinking.ok).toBe(false);
expect(
(badThinking.error as { message?: unknown } | undefined)?.message ?? "",
).toMatch(/invalid thinkinglevel/i);
ws.close();
await server.close();
});