Timeline: When scrolling far into history, discard newest messages
This commit is contained in:
parent
0ca66d6e95
commit
6b4bea6330
3 changed files with 173 additions and 35 deletions
|
@ -54,6 +54,7 @@ const {
|
|||
closeRecommendedGroupSizeModal,
|
||||
conversationStoppedByMissingVerification,
|
||||
createGroup,
|
||||
discardMessages,
|
||||
openConversationInternal,
|
||||
repairNewestMessage,
|
||||
repairOldestMessage,
|
||||
|
@ -1306,6 +1307,52 @@ describe('both/state/ducks/conversations', () => {
|
|||
});
|
||||
});
|
||||
|
||||
describe('DISCARD_MESSAGES', () => {
|
||||
const startState: ConversationsStateType = {
|
||||
...getEmptyState(),
|
||||
messagesLookup: {
|
||||
[messageId]: getDefaultMessage(messageId),
|
||||
[messageIdTwo]: getDefaultMessage(messageIdTwo),
|
||||
[messageIdThree]: getDefaultMessage(messageIdThree),
|
||||
},
|
||||
messagesByConversation: {
|
||||
[conversationId]: {
|
||||
metrics: {
|
||||
totalUnseen: 0,
|
||||
},
|
||||
scrollToMessageCounter: 0,
|
||||
messageIds: [messageId, messageIdTwo, messageIdThree],
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
it('eliminates older messages', () => {
|
||||
const toDiscard = {
|
||||
conversationId,
|
||||
numberToKeepAtBottom: 2,
|
||||
};
|
||||
const state = reducer(startState, discardMessages(toDiscard));
|
||||
|
||||
assert.deepEqual(
|
||||
state.messagesByConversation[conversationId]?.messageIds,
|
||||
[messageIdTwo, messageIdThree]
|
||||
);
|
||||
});
|
||||
|
||||
it('eliminates newer messages', () => {
|
||||
const toDiscard = {
|
||||
conversationId,
|
||||
numberToKeepAtTop: 2,
|
||||
};
|
||||
const state = reducer(startState, discardMessages(toDiscard));
|
||||
|
||||
assert.deepEqual(
|
||||
state.messagesByConversation[conversationId]?.messageIds,
|
||||
[messageId, messageIdTwo]
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('SET_PRE_JOIN_CONVERSATION', () => {
|
||||
const startState = {
|
||||
...getEmptyState(),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue