test: fix gateway handler and typing lease helper types

This commit is contained in:
Gustavo Madeira Santana
2026-03-28 01:11:24 -04:00
parent e2a2492248
commit 21c00165ef
2 changed files with 34 additions and 18 deletions

View File

@@ -1,4 +1,5 @@
import { beforeEach, describe, expect, it, vi } from "vitest";
import type { GatewayRequestHandlerOptions } from "./types.js";
const mocks = vi.hoisted(() => ({
loadConfig: vi.fn(),
@@ -42,6 +43,26 @@ vi.mock("../../infra/channel-activity.js", () => ({
import { channelsHandlers } from "./channels.js";
function createOptions(
params: Record<string, unknown>,
overrides?: Partial<GatewayRequestHandlerOptions>,
): GatewayRequestHandlerOptions {
return {
req: { type: "req", id: "req-1", method: "channels.status", params },
params,
client: null,
isWebchatConnect: () => false,
respond: vi.fn(),
context: {
getRuntimeSnapshot: () => ({
channels: {},
channelAccounts: {},
}),
},
...overrides,
} as unknown as GatewayRequestHandlerOptions;
}
describe("channelsHandlers channels.status", () => {
beforeEach(() => {
vi.clearAllMocks();
@@ -80,20 +101,14 @@ describe("channelsHandlers channels.status", () => {
const autoEnabledConfig = { autoEnabled: true };
mocks.applyPluginAutoEnable.mockReturnValue({ config: autoEnabledConfig, changes: [] });
const respond = vi.fn();
const opts = createOptions(
{ probe: false, timeoutMs: 2000 },
{
respond,
},
);
await channelsHandlers["channels.status"]({
req: {} as never,
params: { probe: false, timeoutMs: 2000 } as never,
client: null,
isWebchatConnect: () => false,
respond,
context: {
getRuntimeSnapshot: () => ({
channels: {},
channelAccounts: {},
}),
} as never,
});
await channelsHandlers["channels.status"](opts);
expect(mocks.applyPluginAutoEnable).toHaveBeenCalledWith({
config: {},