diff --git a/src/telegram/bot-message-dispatch.test.ts b/src/telegram/bot-message-dispatch.test.ts index 6e6536cd7f9..69a399137d2 100644 --- a/src/telegram/bot-message-dispatch.test.ts +++ b/src/telegram/bot-message-dispatch.test.ts @@ -320,6 +320,29 @@ describe("dispatchTelegramMessage draft streaming", () => { ); }); + it("disables block streaming when streamMode is off even if blockStreaming config is true", async () => { + dispatchReplyWithBufferedBlockDispatcher.mockImplementation(async ({ dispatcherOptions }) => { + await dispatcherOptions.deliver({ text: "Hello" }, { kind: "final" }); + return { queuedFinal: true }; + }); + deliverReplies.mockResolvedValue({ delivered: true }); + + await dispatchWithContext({ + context: createContext(), + streamMode: "off", + telegramCfg: { blockStreaming: true }, + }); + + expect(createTelegramDraftStream).not.toHaveBeenCalled(); + expect(dispatchReplyWithBufferedBlockDispatcher).toHaveBeenCalledWith( + expect.objectContaining({ + replyOptions: expect.objectContaining({ + disableBlockStreaming: true, + }), + }), + ); + }); + it("forces new message when new assistant message starts after previous output", async () => { const draftStream = createDraftStream(999); createTelegramDraftStream.mockReturnValue(draftStream);