From f288ff3f9fe26bfed003c1d490f3cc6c5f5fc03d Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Tue, 31 Mar 2026 17:58:41 +0900 Subject: [PATCH] fix(tests): stabilize cron and blocked-flow assertions --- src/cli/cron-cli/shared.test.ts | 21 ++++++++++++++++++++- src/tasks/task-executor.test.ts | 1 + 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/cli/cron-cli/shared.test.ts b/src/cli/cron-cli/shared.test.ts index 8fbfffc48e6..ca593cd5bfd 100644 --- a/src/cli/cron-cli/shared.test.ts +++ b/src/cli/cron-cli/shared.test.ts @@ -1,8 +1,16 @@ -import { describe, expect, it } from "vitest"; +import { beforeEach, describe, expect, it, vi } from "vitest"; import type { CronJob } from "../../cron/types.js"; import type { RuntimeEnv } from "../../runtime.js"; import { getCronChannelOptions, printCronList } from "./shared.js"; +const hoisted = vi.hoisted(() => ({ + listChannelPluginsMock: vi.fn(), +})); + +vi.mock("../../channels/plugins/index.js", () => ({ + listChannelPlugins: hoisted.listChannelPluginsMock, +})); + function createRuntimeLogCapture(): { logs: string[]; runtime: RuntimeEnv } { const logs: string[] = []; const runtime = { @@ -31,6 +39,11 @@ function createBaseJob(overrides: Partial): CronJob { } describe("printCronList", () => { + beforeEach(() => { + hoisted.listChannelPluginsMock.mockReset(); + hoisted.listChannelPluginsMock.mockReturnValue([]); + }); + it("handles job with undefined sessionTarget (#9649)", () => { const { logs, runtime } = createRuntimeLogCapture(); @@ -170,6 +183,12 @@ describe("printCronList", () => { describe("getCronChannelOptions", () => { it("falls back to a generic channel placeholder when no plugins are loaded", () => { + hoisted.listChannelPluginsMock.mockReturnValue([]); expect(getCronChannelOptions()).toBe("last|"); }); + + it("lists discovered channel plugin ids when plugins are available", () => { + hoisted.listChannelPluginsMock.mockReturnValue([{ id: "telegram" }, { id: "signal" }]); + expect(getCronChannelOptions()).toBe("last|telegram|signal"); + }); }); diff --git a/src/tasks/task-executor.test.ts b/src/tasks/task-executor.test.ts index 330170063e3..7404ac78e84 100644 --- a/src/tasks/task-executor.test.ts +++ b/src/tasks/task-executor.test.ts @@ -224,6 +224,7 @@ describe("task-executor", () => { task: "Patch file", startedAt: 10, deliveryStatus: "pending", + notifyPolicy: "silent", }); completeTaskRunByRunId({