Fixed custom status issues (#5476)
Fixed MM-36571 and MM-36601 issues by dispatching RECEIVED_ME action on websocket reconnecting Added memoization in makeGetCustomStatus in custom status emoji component Fixed e2e test case failing due to post header custom status emoji
This commit is contained in:
parent
f4f8379796
commit
c06b5ecb4f
4 changed files with 8 additions and 4 deletions
|
|
@ -151,6 +151,9 @@ export function doReconnect(now: number) {
|
|||
}
|
||||
|
||||
actions.push({
|
||||
type: UserTypes.RECEIVED_ME,
|
||||
data: me.user,
|
||||
}, {
|
||||
type: PreferenceTypes.RECEIVED_ALL_PREFERENCES,
|
||||
data: me.preferences,
|
||||
}, {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
||||
// See LICENSE.txt for license information.
|
||||
|
||||
import React from 'react';
|
||||
import React, {useMemo} from 'react';
|
||||
import {Text, TextStyle} from 'react-native';
|
||||
import {useSelector} from 'react-redux';
|
||||
|
||||
|
|
@ -17,7 +17,7 @@ interface ComponentProps {
|
|||
}
|
||||
|
||||
const CustomStatusEmoji = ({emojiSize, userID, style, testID}: ComponentProps) => {
|
||||
const getCustomStatus = makeGetCustomStatus();
|
||||
const getCustomStatus = useMemo(makeGetCustomStatus, []);
|
||||
const customStatus = useSelector((state: GlobalState) => {
|
||||
return getCustomStatus(state, userID);
|
||||
});
|
||||
|
|
|
|||
|
|
@ -92,6 +92,7 @@ const Header = ({
|
|||
<CustomStatusEmoji
|
||||
userID={post.user_id}
|
||||
style={style.customStatusEmoji}
|
||||
testID='post_header'
|
||||
/>
|
||||
)}
|
||||
{!isSystemPost &&
|
||||
|
|
|
|||
|
|
@ -213,14 +213,14 @@ describe('Custom status', () => {
|
|||
|
||||
// # Post a message and check if custom status emoji is present in the post header
|
||||
await ChannelScreen.postMessage(message);
|
||||
await expect(element(by.id(`custom_status_emoji.${customStatus.emojiName}`).withAncestor(by.id('post_header')))).toBeVisible();
|
||||
await expect(element(by.id(`post_header.custom_status_emoji.${customStatus.emojiName}`))).toBeVisible();
|
||||
|
||||
// # Open the reply thread for the last post
|
||||
const {post} = await Post.apiGetLastPostInChannel(testChannel.id);
|
||||
await ChannelScreen.openReplyThreadFor(post.id, message);
|
||||
|
||||
// * Check if the custom status emoji is present in the post header and close thread
|
||||
await expect(element(by.id(`custom_status_emoji.${customStatus.emojiName}`).withAncestor(by.id('post_header')))).toBeVisible();
|
||||
await expect(element(by.id(`post_header.custom_status_emoji.${customStatus.emojiName}`))).toBeVisible();
|
||||
await ThreadScreen.back();
|
||||
|
||||
// # Open user profile screen
|
||||
|
|
|
|||
Loading…
Reference in a new issue