From 4e0f193e2edf089830defd25863c5400a13a2853 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 8 May 2026 19:30:58 +0100 Subject: [PATCH] test: require slack async callbacks --- extensions/slack/src/monitor/slash.test.ts | 5 ++++- extensions/slack/src/send.upload.test.ts | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/extensions/slack/src/monitor/slash.test.ts b/extensions/slack/src/monitor/slash.test.ts index b2dbc7d2f6d..79f910636d9 100644 --- a/extensions/slack/src/monitor/slash.test.ts +++ b/extensions/slack/src/monitor/slash.test.ts @@ -287,10 +287,13 @@ function findFirstActionsBlock(payload: { blocks?: Array<{ type: string }> }) { } function createDeferred() { - let resolve!: (value: T | PromiseLike) => void; + let resolve: ((value: T | PromiseLike) => void) | undefined; const promise = new Promise((res) => { resolve = res; }); + if (!resolve) { + throw new Error("Expected Slack slash deferred resolver to be initialized"); + } return { promise, resolve }; } diff --git a/extensions/slack/src/send.upload.test.ts b/extensions/slack/src/send.upload.test.ts index 58a96067101..b85e5a08185 100644 --- a/extensions/slack/src/send.upload.test.ts +++ b/extensions/slack/src/send.upload.test.ts @@ -178,7 +178,7 @@ describe("sendMessageSlack file upload with user IDs", () => { it("serializes concurrent sends to the same Slack target", async () => { const client = createUploadTestClient(); - let resolveFirst!: () => void; + let resolveFirst: (() => void) | undefined; client.chat.postMessage.mockImplementation(async (payload: { text?: string }) => { if (payload.text === "first") { await new Promise((resolve) => { @@ -204,6 +204,9 @@ describe("sendMessageSlack file upload with user IDs", () => { await Promise.resolve(); expect(client.chat.postMessage).toHaveBeenCalledTimes(1); + if (!resolveFirst) { + throw new Error("Expected first Slack send release callback to be initialized"); + } resolveFirst(); await expect(first).resolves.toMatchObject({