Rocket.Chat.ReactNative/e2e/01-welcome.spec.js

51 lines
1.6 KiB
JavaScript
Raw Normal View History

2018-05-23 13:39:18 +00:00
const {
device, expect, element, by, waitFor
} = require('detox');
const { tapBack } = require('./helpers/app');
2018-05-23 13:39:18 +00:00
describe('Welcome screen', () => {
before(async() => {
2020-03-03 20:27:38 +00:00
await device.launchApp({ newInstance: true });
await element(by.id('join-community-button')).tap();
await waitFor(element(by.id('welcome-view'))).toBeVisible().withTimeout(60000);
})
2018-05-23 13:39:18 +00:00
describe('Render', async() => {
it('should have welcome screen', async() => {
await expect(element(by.id('welcome-view'))).toBeVisible();
});
it('should have register button', async() => {
await expect(element(by.id('welcome-view-register'))).toBeVisible();
});
it('should have login button', async() => {
await expect(element(by.id('welcome-view-login'))).toBeVisible();
});
// TODO: oauth
});
describe('Usage', async() => {
it('should navigate to login', async() => {
await element(by.id('welcome-view-login')).tap();
await waitFor(element(by.id('login-view'))).toBeVisible().withTimeout(2000);
await expect(element(by.id('login-view'))).toBeVisible();
});
it('should navigate to register', async() => {
await tapBack();
2018-05-23 13:39:18 +00:00
await element(by.id('welcome-view-register')).tap();
await waitFor(element(by.id('register-view'))).toBeVisible().withTimeout(2000);
await expect(element(by.id('register-view'))).toBeVisible();
});
it('should navigate to legal', async() => {
await tapBack();
await element(by.id('welcome-view-more')).tap();
await waitFor(element(by.id('legal-view'))).toBeVisible().withTimeout(2000);
await expect(element(by.id('legal-view'))).toBeVisible();
2018-05-23 13:39:18 +00:00
});
});
});