Skip to content

Commit

Permalink
improved code coverage
Browse files Browse the repository at this point in the history
  • Loading branch information
disha1202 committed Sep 1, 2024
1 parent 40d6679 commit d1bc0a0
Showing 1 changed file with 85 additions and 0 deletions.
85 changes: 85 additions & 0 deletions src/components/UserPortal/ChatRoom/ChatRoom.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -1802,6 +1802,91 @@ describe('Testing Chatroom Component [User Portal]', () => {
await wait(400);
});

test('send message direct chat when userId is different', async () => {
setItem('userId', '8');
const mocks = [
...SEND_MESSAGE_TO_DIRECT_CHAT_MOCK,
...DIRECT_CHAT_BY_ID_QUERY_MOCK,
...GROUP_CHAT_BY_ID_QUERY_MOCK,
...MESSAGE_SENT_TO_DIRECT_CHAT_MOCK,
...MESSAGE_SENT_TO_GROUP_CHAT_MOCK,
];
const link2 = new StaticMockLink(mocks, true);
render(
<MockedProvider addTypename={false} link={link2}>
<BrowserRouter>
<Provider store={store}>
<I18nextProvider i18n={i18nForTest}>
<ChatRoom selectedContact="1" selectedChatType="direct" />
</I18nextProvider>
</Provider>
</BrowserRouter>
</MockedProvider>,
);
await wait();

const input = (await screen.findByTestId(
'messageInput',
)) as HTMLInputElement;

act(() => {
fireEvent.change(input, { target: { value: 'Hello' } });
});
expect(input.value).toBe('Hello');

const sendBtn = await screen.findByTestId('sendMessage');

expect(sendBtn).toBeInTheDocument();
act(() => {
fireEvent.click(sendBtn);
});
await waitFor(() => {
expect(input.value).toBeFalsy();
});

const messages = await screen.findAllByTestId('directChatMsg');

console.log('MESSAGES', messages);

expect(messages.length).not.toBe(0);

act(() => {
fireEvent.mouseOver(messages[0]);
});

await waitFor(async () => {
expect(await screen.findByTestId('moreOptions')).toBeInTheDocument();
});

const moreOptionsBtn = await screen.findByTestId('dropdown');
act(() => {
fireEvent.click(moreOptionsBtn);
});

const replyBtn = await screen.findByTestId('replyBtn');

act(() => {
fireEvent.click(replyBtn);
});

const replyMsg = await screen.findByTestId('replyMsg');

await waitFor(() => {
expect(replyMsg).toBeInTheDocument();
});

act(() => {
fireEvent.change(input, { target: { value: 'Test reply message' } });
});
expect(input.value).toBe('Test reply message');

act(() => {
fireEvent.click(sendBtn);
});

await wait(400);
});

test('Selected contact is group chat', async () => {
const mocks = [
...DIRECT_CHAT_BY_ID_QUERY_MOCK,
Expand Down

0 comments on commit d1bc0a0

Please sign in to comment.