Files
talk/test/e2e/specs/01_install.js
T
2017-12-21 14:10:28 +01:00

95 lines
2.5 KiB
JavaScript

module.exports = {
'@tags': ['install'],
before: (client) => {
client.setWindowPosition(0, 0);
client.resizeWindow(1600, 1200);
},
afterEach: (client, done) => {
if (client.currentTest.results.failed) {
throw new Error('Test Case failed, skipping all the rest');
}
done();
},
after: (client) => {
client.end();
},
'User goes to install': (client) => {
const install = client.page.install();
install
.navigate()
.expect.section('@step1').to.be.visible;
},
'User clicks get started button': (client) => {
const step1 = client.page.install().section.step1;
step1
.waitForElementVisible('@getStartedButton')
.click('@getStartedButton');
},
'User should see step 2 - Add Organization Name': (client) => {
const install = client.page.install();
install
.expect.section('@step2').to.be.visible;
},
'User fills step 2': (client) => {
const step2 = client.page.install().section.step2;
const {testData} = client.globals;
step2
.waitForElementVisible('@organizationNameInput')
.setValue('@organizationNameInput', testData.organizationName)
.waitForElementVisible('@saveButton')
.click('@saveButton');
},
'User should see step 3 - Create your account': (client) => {
const install = client.page.install();
install
.expect.section('@step3').to.be.visible;
},
'User fills step 3': (client) => {
const step3 = client.page.install().section.step3;
const {testData: {admin}} = client.globals;
step3
.setValue('@emailInput', admin.email)
.setValue('@usernameInput', admin.username)
.setValue('@passwordInput', admin.password)
.setValue('@confirmPasswordInput', admin.password)
.waitForElementVisible('@saveButton')
.click('@saveButton');
},
'User should see step 4 - Domain Whitelist': (client) => {
const install = client.page.install();
install
.expect.section('@step4').to.be.visible;
},
'User fills step 4': (client) => {
const step4 = client.page.install().section.step4;
step4
.waitForElementVisible('@domainInput')
.setValue('@domainInput', client.launchUrl);
client.keys(client.Keys.ENTER);
step4
.waitForElementVisible('@saveButton')
.click('@saveButton');
},
'User should see step 5 - Final Step': (client) => {
const install = client.page.install();
install
.expect.section('@step5').to.be.visible;
},
};