Files
mattermost-mobile/detox/e2e/support/ui/screen/thread_options.ts
Joseph Baylon 70bdfcf8fd Detox Maintenance: Update deps, fix import, fix failing tests -- iOS only (#7070)
* Detox Maintenance: Update deps, fix import, fix failing tests

* Revert message reply step 3

* Try fresh install per test file
2023-02-01 08:32:57 -08:00

47 lines
2.0 KiB
TypeScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import {timeouts, wait} from '@support/utils';
import {expect} from 'detox';
class ThreadOptionsScreen {
testID = {
threadOptionsScreen: 'thread_options.screen',
replyThreadOption: 'post_options.reply_post.option',
followThreadOption: 'post_options.follow_thread.option',
followingThreadOption: 'post_options.following_thread.option',
openInChannelOption: 'thread_options.open_in_channel.option',
markAsReadOption: 'thread_options.mark_as_read.option',
markAsUnreadOption: 'thread_options.mark_as_unread.option',
saveThreadOption: 'post_options.save_post.option',
unsaveThreadOption: 'post_options.unsave_post.option',
copyLinkOption: 'post_options.copy_permalink.option',
};
threadOptionsScreen = element(by.id(this.testID.threadOptionsScreen));
replyThreadOption = element(by.id(this.testID.replyThreadOption));
followThreadOption = element(by.id(this.testID.followThreadOption));
followingThreadOption = element(by.id(this.testID.followingThreadOption));
openInChannelOption = element(by.id(this.testID.openInChannelOption));
markAsReadOption = element(by.id(this.testID.markAsReadOption));
markAsUnreadOption = element(by.id(this.testID.markAsUnreadOption));
saveThreadOption = element(by.id(this.testID.saveThreadOption));
unsaveThreadOption = element(by.id(this.testID.unsaveThreadOption));
copyLinkOption = element(by.id(this.testID.copyLinkOption));
toBeVisible = async () => {
await waitFor(this.threadOptionsScreen).toExist().withTimeout(timeouts.TEN_SEC);
return threadOptionsScreen;
};
close = async () => {
await this.threadOptionsScreen.swipe('down');
await expect(this.threadOptionsScreen).not.toBeVisible();
await wait(timeouts.ONE_SEC);
};
}
const threadOptionsScreen = new ThreadOptionsScreen();
export default threadOptionsScreen;