diff --git a/ts/sql/Server.ts b/ts/sql/Server.ts index c9f0f07c9..a51e3827d 100644 --- a/ts/sql/Server.ts +++ b/ts/sql/Server.ts @@ -2157,7 +2157,7 @@ async function getUnreadReactionsAndMarkRead({ const unreadMessages: Array = db .prepare( ` - SELECT rowid, targetAuthorUuid, targetTimestamp, messageId + SELECT reactions.rowid, targetAuthorUuid, targetTimestamp, messageId FROM reactions JOIN messages on messages.id IS reactions.messageId WHERE diff --git a/ts/test-electron/sql/markRead_test.ts b/ts/test-electron/sql/markRead_test.ts index 7c7c9e02e..d796a13d8 100644 --- a/ts/test-electron/sql/markRead_test.ts +++ b/ts/test-electron/sql/markRead_test.ts @@ -410,6 +410,17 @@ describe('sql/markRead', () => { const conversationId = getUuid(); const storyId = getUuid(); + const pad: Array = Array.from({ length: 4 }, _ => { + return { + id: getUuid(), + body: 'pad message', + type: 'incoming', + conversationId, + sent_at: start - 1, + received_at: start - 1, + timestamp: start - 1, + }; + }); const message1: MessageAttributesType = { id: getUuid(), body: 'message 1', @@ -457,10 +468,13 @@ describe('sql/markRead', () => { timestamp: start + 5, }; - await saveMessages([message1, message2, message3, message4, message5], { - forceSave: true, - }); - assert.lengthOf(await _getAllMessages(), 5); + await saveMessages( + [...pad, message1, message2, message3, message4, message5], + { + forceSave: true, + } + ); + assert.lengthOf(await _getAllMessages(), pad.length + 5); const reaction1: ReactionType = { conversationId,