* Add linter rules for import order and type member delimiters * Remove unneeded group * Group all app/* imports before the internal imports * Move app/ imports before parent imports * Separate @node_modules imports into a different group * Substitute app paths by aliases * Fix @node_modules import order and add test related modules * Add aliases for types and test, and group import types
83 lines
2.6 KiB
JavaScript
83 lines
2.6 KiB
JavaScript
// 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 {
|
|
Channel,
|
|
Post,
|
|
Setup,
|
|
} from '@support/server_api';
|
|
import {
|
|
ChannelScreen,
|
|
EditPostScreen,
|
|
} from '@support/ui/screen';
|
|
|
|
describe('Message Edit', () => {
|
|
const testMessage = Date.now().toString();
|
|
const additionalText = ' additional text';
|
|
const {
|
|
getPostListPostItem,
|
|
openPostOptionsFor,
|
|
postMessage,
|
|
} = ChannelScreen;
|
|
const {
|
|
messageInput,
|
|
saveButton,
|
|
} = EditPostScreen;
|
|
let testChannel;
|
|
|
|
beforeAll(async () => {
|
|
const {team, user} = await Setup.apiInit();
|
|
const {channel} = await Channel.apiGetChannelByName(team.id, 'town-square');
|
|
testChannel = channel;
|
|
|
|
// # Open channel screen
|
|
await ChannelScreen.open(user);
|
|
});
|
|
|
|
afterAll(async () => {
|
|
await ChannelScreen.logout();
|
|
});
|
|
|
|
it('MM-T100 should be able to edit a message and cancel', async () => {
|
|
// # Post a message
|
|
await postMessage(testMessage);
|
|
|
|
// # Open edit post screen
|
|
const {post} = await Post.apiGetLastPostInChannel(testChannel.id);
|
|
await openPostOptionsFor(post.id, testMessage);
|
|
await EditPostScreen.open();
|
|
|
|
// # Edit post and cancel
|
|
await messageInput.tap();
|
|
await messageInput.typeText(additionalText);
|
|
await EditPostScreen.close();
|
|
|
|
// * Verify post is not edited
|
|
await ChannelScreen.toBeVisible();
|
|
const {postListPostItem} = await getPostListPostItem(post.id, testMessage);
|
|
await expect(postListPostItem).toBeVisible();
|
|
});
|
|
|
|
it('MM-T101 should be able to edit a message and save', async () => {
|
|
// # Open edit post screen
|
|
const {post} = await Post.apiGetLastPostInChannel(testChannel.id);
|
|
await openPostOptionsFor(post.id, testMessage);
|
|
await EditPostScreen.open();
|
|
|
|
// # Edit post and save
|
|
await messageInput.tap();
|
|
await messageInput.typeText(additionalText);
|
|
await saveButton.tap();
|
|
|
|
// * Verify post is edited
|
|
await ChannelScreen.toBeVisible();
|
|
const {postListPostItem} = await getPostListPostItem(post.id, `${testMessage}${additionalText} (edited)`);
|
|
await expect(postListPostItem).toBeVisible();
|
|
});
|
|
});
|