MM-30695 Detox/E2E: Add e2e for MM-T3218 (#5135)
* MM-30695 Detox/E2E: Add e2e for MM-T3218 * Minimize keyboard
This commit is contained in:
parent
e33a16d4f1
commit
82a5ef276b
1 changed files with 67 additions and 0 deletions
67
detox/e2e/test/smoke_test/message_reply.e2e.js
Normal file
67
detox/e2e/test/smoke_test/message_reply.e2e.js
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
||||
// See LICENSE.txt for license information.
|
||||
|
||||
// *******************************************************************
|
||||
// - [#] indicates a test step (e.g. # Go to a screen)
|
||||
// - [*] indicates an assertion (e.g. * Check the title)
|
||||
// - Use element testID when selecting an element. Create one if none.
|
||||
// *******************************************************************
|
||||
|
||||
import {
|
||||
ChannelScreen,
|
||||
ThreadScreen,
|
||||
} from '@support/ui/screen';
|
||||
import {
|
||||
Channel,
|
||||
Post,
|
||||
Setup,
|
||||
} from '@support/server_api';
|
||||
|
||||
describe('Message Reply', () => {
|
||||
let testChannel;
|
||||
let parentPost;
|
||||
let parentPostItem;
|
||||
let replyPost;
|
||||
let replyPostItem;
|
||||
|
||||
beforeAll(async () => {
|
||||
const {team, user} = await Setup.apiInit();
|
||||
|
||||
const {channel} = await Channel.apiGetChannelByName(team.name, 'town-square');
|
||||
testChannel = channel;
|
||||
|
||||
// # Open channel screen
|
||||
await ChannelScreen.open(user);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await ChannelScreen.logout();
|
||||
});
|
||||
|
||||
it('MM-T3218 should be able to post a reply to a message', async () => {
|
||||
// # Post a message
|
||||
const parentMessage = Date.now().toString();
|
||||
await ChannelScreen.postMessage(parentMessage);
|
||||
|
||||
// * Verify parent post is displayed in reply thread
|
||||
({post: parentPost} = await Post.apiGetLastPostInChannel(testChannel.id));
|
||||
await ChannelScreen.openReplyThreadFor(parentPost.id, parentMessage);
|
||||
({postListPostItem: parentPostItem} = await ThreadScreen.getPostListPostItem(parentPost.id, parentMessage));
|
||||
await expect(parentPostItem).toBeVisible();
|
||||
|
||||
// # Post a reply
|
||||
const replyMessage = `reply to ${parentMessage}`;
|
||||
await ThreadScreen.postMessage(replyMessage);
|
||||
|
||||
// * Verify reply post appears after parent post in reply thread
|
||||
({post: replyPost} = await Post.apiGetLastPostInChannel(testChannel.id));
|
||||
({postListPostItem: replyPostItem} = await ThreadScreen.getPostListPostItem(replyPost.id, replyMessage));
|
||||
await expect(replyPostItem).toBeVisible();
|
||||
await replyPostItem.tap();
|
||||
|
||||
// * Verify reply post is displayed in main channel
|
||||
await ThreadScreen.back();
|
||||
await ChannelScreen.toBeVisible();
|
||||
await expect(element(by.text(replyMessage))).toBeVisible();
|
||||
});
|
||||
});
|
||||
Loading…
Reference in a new issue