* Add more messages button * Update existing tests * Various fixes: * Use viewAreaCoveragePercentThreshold over itemVisiblePercentThreshold * Remove currentUserId check when adding New Message line to postIds and instead update the channel last viewed time when an own post is received * Update snapshots * Add showMoreMessagesButton prop and default to false * Android fixes * Add tests * Localize more messages text * Use FormattedText * i18 extract * Style fixes * Account for network indicator * Fix for failing tests * Various fixes: * Set the unreadMessageCount when POST_UNREAD_SUCCESS is dispatched with a positive deltaMsgs * Hide the more messages button when the unread count decreases or when the new message line is removed shortly after loading the channel * No need for POST_UNREAD_SUCCESS if we manually call onViewableItemsChanged * Reset unread count if current channel on channel mount * Animate text opacity * Compare indeces to determine when scrolling has ended * Fix opacity animation trigger * try with scrolling to the last rendered item * Add onScrollEndIndex * Improve animations * Don't track moreCount in state * Use moreText over prevNewMessageLineIndex to determine firstPage * Update intl message format and call cancel in componentDidUpdate when needed * Fix intl format * Remove opacity animation and countText * Fix pressed not being reset * No need to separate intl func * Return after resetting * Fix accidental removal of setState call * Reset pressed when newLineMessageIndex changes * Use default windowSize and lower POST_CHUNK_SIZE and delays * Queue a cancel timer that gets cleared only when the newMessageLineIndex changes * Define uncancel func * Increase cancelTimer delay * Subtract read posts from unread count and account for retry indicator * Add retry bar indicator tests * Use props.unreadCount * Fix handling of newMessageLineIndex change * Fix handling of newMessageLineIndex change take 2 * Fix handling of newMessageLineIndex change take 3 * Use 'native' TouchableWithFeedback with dark overlay * Fix handling of manually unread * Update chunk and window sizes * Fix hsl * Update text only when newMessageLineIndex/endIndex is reached * Don't delay cancel if when no more unreads * Fixes for when opening the app * No need to process viewableItems when unreadCount is 0 * Remove line * Don't show if unreadCount is 0 Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
41 lines
1.1 KiB
JavaScript
41 lines
1.1 KiB
JavaScript
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
|
// See LICENSE.txt for license information.
|
|
|
|
import channelReducer from './channel';
|
|
|
|
describe('Reducers.channel', () => {
|
|
const initialState = {
|
|
displayName: '',
|
|
drafts: {},
|
|
loading: false,
|
|
refreshing: false,
|
|
loadingPosts: {},
|
|
lastGetPosts: {},
|
|
retryFailed: false,
|
|
loadMorePostsVisible: true,
|
|
lastChannelViewTime: {},
|
|
keepChannelIdAsUnread: null,
|
|
unreadMessageCount: {},
|
|
};
|
|
|
|
test('Initial state', () => {
|
|
const nextState = channelReducer(
|
|
{
|
|
displayName: '',
|
|
drafts: {},
|
|
loading: false,
|
|
refreshing: false,
|
|
loadingPosts: {},
|
|
lastGetPosts: {},
|
|
retryFailed: false,
|
|
loadMorePostsVisible: true,
|
|
lastChannelViewTime: {},
|
|
keepChannelIdAsUnread: null,
|
|
unreadMessageCount: {},
|
|
},
|
|
{},
|
|
);
|
|
|
|
expect(nextState).toEqual(initialState);
|
|
});
|
|
});
|