Skip to content
Snippets Groups Projects
Commit 0e1bb6c8 authored by Maxim Khlobystov's avatar Maxim Khlobystov
Browse files

Moved all the existing modal elements to the home page object.

parent c1dd7fa4
No related branches found
No related tags found
No related merge requests found
......@@ -8,6 +8,52 @@ class HomePage extends Page {
login(username, meeting) {
super.open('demo/demoHTML5.jsp?username=' + username + '&meetingname=' + meeting.replace(/\s+/g, '+') + '&action=create');
}
get audioModalHeaderSelector() {
return '[data-test=audioModalHeader]';
}
get audioModalHeaderElement() {
return browser.element(this.audioModalSelector);
}
get audioModalSelector() {
return '.ReactModal__Content--after-open._imports_ui_components_audio_audio_modal__styles__modal';
}
get modalBaseCloseButtonSelector() {
return '[data-test=modalBaseCloseButton]';
}
get modalBaseCloseButtonElement() {
return $(this.modalBaseCloseButtonSelector);
}
get settingsDropdownTriggerSelector() {
return '[data-test=settingsDropdownTrigger]';
}
get settingsDropdownTriggerElement() {
return browser.element(this.settingsDropdownTriggerSelector);
}
get settingsDropdownSelector() {
return '[data-test=settingsDropdownTrigger] + [data-test=dropdownContent][aria-expanded="true"]';
}
get settingsDropdownElement() {
return browser.element(this.settingsDropdownSelector);
}
get settingsDropdownLogoutButtonSelector() {
return '[data-test=settingsDropdownLogoutButton]';
}
get settingsDropdownLogoutButtonElement() {
return browser.element(this.settingsDropdownLogoutButtonSelector);
}
get logoutModalSelector() {
return '.ReactModal__Content--after-open._imports_ui_components_modal_fullscreen__styles__modal';
}
get logoutModalElement() {
return browser.element(this.logoutModalSelector);
}
}
module.exports = new HomePage();
......
......@@ -7,27 +7,27 @@ let utils = require('../../utils');
describe('Screenshots:', function() {
it('Join Audio modal looks good', function() {
HomePage.login('testuser', 'Demo Meeting');
browser.element('[data-test=audioModalHeader]').waitForExist(7000);
utils.expectImageMatch(browser.checkElement('.ReactModal__Content--after-open._imports_ui_components_audio_audio_modal__styles__modal'), 'Join Audio modal isn\'t the same');
HomePage.audioModalHeaderElement.waitForExist(7000);
utils.expectImageMatch(browser.checkElement(HomePage.audioModalSelector), 'Join Audio modal isn\'t the same');
});
it('Home page viewport looks good', function() {
$('[data-test=modalBaseCloseButton]').click();
HomePage.modalBaseCloseButtonElement.click();
utils.expectImageMatch(browser.checkViewport(), 'Home page viewport isn\'t the same');
});
it('Settings dropdown looks good', function() {
browser.element('[data-test=settingsDropdownTrigger]').waitForExist(2000);
$('[data-test=settingsDropdownTrigger]').click();
browser.element('[data-test=settingsDropdownTrigger] + [data-test=dropdownContent][aria-expanded="true"]').waitForExist(2000);
utils.expectImageMatch(browser.checkElement('[data-test=settingsDropdownTrigger] + [data-test=dropdownContent][aria-expanded="true"]'), 'Settings dropdown isn\'t the same');
HomePage.settingsDropdownTriggerElement.waitForExist(2000);
HomePage.settingsDropdownTriggerElement.click();
HomePage.settingsDropdownElement.waitForExist(2000);
utils.expectImageMatch(browser.checkElement(HomePage.settingsDropdownSelector), 'Settings dropdown isn\'t the same');
});
it('Logout popup looks good', function() {
browser.element('[data-test=settingsDropdownLogoutButton]').waitForExist(2000);
$('[data-test=settingsDropdownLogoutButton]').click();
browser.element('.ReactModal__Content--after-open._imports_ui_components_modal_fullscreen__styles__modal').waitForExist(2000);
utils.expectImageMatch(browser.checkElement('.ReactModal__Content--after-open._imports_ui_components_modal_fullscreen__styles__modal'));
HomePage.settingsDropdownLogoutButtonElement.waitForExist(2000);
HomePage.settingsDropdownLogoutButtonElement.click();
HomePage.logoutModalElement.waitForExist(2000);
utils.expectImageMatch(browser.checkElement(HomePage.logoutModalSelector));
});
});
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment