mattermost-mobile/detox/e2e/support/ui/screen/select_server.js
Saturnino Abril a819f63d99
MM-30076 Detox/E2E: Update UI test structure for reusability (#4931)
* update UI test structure for reusability

* fix Android tests

* improve autocomplete test

* minor cleanup
2020-11-03 18:11:49 +08:00

42 lines
1.3 KiB
JavaScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import {serverUrl} from '@support/test_config';
class SelectServerScreen {
testID = {
selectServerScreen: 'select_server.screen',
connectButton: 'connect.button',
errorText: 'error.text',
headerText: 'header.text',
serverUrlInput: 'server_url.input',
}
selectServerScreen = element(by.id(this.testID.selectServerScreen));
serverUrlInput = element(by.id(this.testID.serverUrlInput));
connectButton = element(by.id(this.testID.connectButton));
errorText = element(by.id(this.testID.errorText));
toBeVisible = async () => {
await expect(this.selectServerScreen).toBeVisible();
return this.selectServerScreen;
}
/**
* connectToServer enters server URL on Select Server screen and then tap connect button.
*/
connectToServer = async () => {
const screen = await this.toBeVisible();
await this.serverUrlInput.replaceText(serverUrl);
// # Tap anywhere to hide keyboard
await screen.tap({x: 5, y: 10});
await this.connectButton.tap();
}
}
const selectServerScreen = new SelectServerScreen();
export default selectServerScreen;