diff --git a/extensions/mattermost/src/mattermost/monitor-websocket.test.ts b/extensions/mattermost/src/mattermost/monitor-websocket.test.ts index c17e2c829a..8311092ff9 100644 --- a/extensions/mattermost/src/mattermost/monitor-websocket.test.ts +++ b/extensions/mattermost/src/mattermost/monitor-websocket.test.ts @@ -185,24 +185,27 @@ describe("mattermost websocket monitor", () => { webSocketFactory: () => socket, }); - socket.emitOpen(); - socket.emitMessage( - Buffer.from( - JSON.stringify({ - event: "reaction_added", - data: { - reaction: JSON.stringify({ - user_id: "user-1", - post_id: "post-1", - emoji_name: "thumbsup", - }), - }, - }), - ), - ); - socket.emitClose(1000); + const connected = connectOnce(); + queueMicrotask(() => { + socket.emitOpen(); + socket.emitMessage( + Buffer.from( + JSON.stringify({ + event: "reaction_added", + data: { + reaction: JSON.stringify({ + user_id: "user-1", + post_id: "post-1", + emoji_name: "thumbsup", + }), + }, + }), + ), + ); + socket.emitClose(1000); + }); - await connectOnce(); + await connected; expect(onReaction).toHaveBeenCalledTimes(1); expect(onPosted).not.toHaveBeenCalled();