Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- "use strict";
- //Functions
- const Helpers = require("../helpers/helpers.js");
- module.exports = {
- appBar: 'app-bar>div.desktop',
- navMenu: 'div.desktop>nav.menu',
- bookBtn: '//div[@class="desktop"]//button[1]',
- historyBtn: '//div[@class="desktop"]//button[2]',
- cheatsBtn: '//div[@class="desktop"]//button[@class="menu-button ng-star-inserted"]',
- fontsBtn: '//div[@class="desktop"]//button[@class="toggle-button"]',
- userBtn: '//button//span[@class="user-name"]',
- helpBtn: 'div.user-menu>button.menu-button:nth-child(2)',
- logoutBtn: 'div.user-menu>button.logout',
- statusField: 'div.reading-status>reading-status-heading',
- listeningIcon: 'div.reading-status>reading-status-heading>div.heading-icon.listening',
- readingIcon: 'div.reading-status>reading-status-heading>div.heading-icon.reading',
- listeningStatus: '//div[contains(@class,"reading-status")]//div[contains(@class,"listening")]',
- readingStatus: '//div[contains(@class,"reading-status")]//div[contains(@class,"reading")]',
- question: (text) => `//h2[contains(text(),"${text}")]`,
- answer: (text) => `//button[contains(text(),"${text}")]`,
- spinner: 'svg.spinner',
- bookFrame: 'iframe.iframe-fixed',
- bookHeading: 'h2',
- chapterList: 'ol',
- chapter: (number) => `li:nth-child(${number})>a`,
- chapterTitle: '//div[@class="chapter-label"]',
- chapterHeader: (number) => `//*[contains(text(),"CHAPTER ${number}")]`,
- selectChapter: (num) => `//*[text()="chapter_${num}"]`,
- hardCodeChapter1: '//*[@href="chapter_1.xhtml"]',
- modal: 'div.modal',
- modalHeader: '#rcq-header-question',
- modalLegend: '//div[@class="modal"]//legend',
- modalLabel: (number) => `//div[@class="modal"]//label[${number}]`,
- modalTitle: 'div.modal>div.title',
- modalClose: 'div.modal>div.title>div.close',
- modalBody: 'div.modal>div.body',
- modalDismissBtn: 'div.modal>div.controls>button.dismiss',
- modalSubmitBtn: 'div.modal>div.controls>button.confirm',
- modalConfirmBtn: 'div.modal>div.controls>button.confirm',
- startReading: '//button[text()="Start reading"]',
- answerBtn: (number) => `//button[contains(@class, "answer")][${number}]`,
- resetUserState: '//button[text()="Reset user state"]',
- finishTurn: '//button[text()="Finish turn"]',
- play: 'button.play',
- pause: 'button.pause',
- stop: 'button.stop',
- rewind: 'button.rewind',
- replay: 'button.replay',
- userMenuBtn: (btn) => `//div[@class="desktop"]//button[contains(text(),"${btn}")]`,
- doNotAskAgainTgl: '//label/input[@type="checkbox"]',
- chapterNumber: 'h2.chapter-header:nth-child(4) ',
- //chapterTitle: 'span#f000002',
- progress: 'div.percentage',
- awaitLoad() {
- waitFor(this.appBar);
- },
- logout() {
- waitAndClick(this.userBtn);
- waitAndClick(this.userMenuBtn("Log Out"));
- },
- resetuserstate() {
- waitAndClick(this.cheatsBtn);
- waitAndClick(this.resetUserState);
- },
- finishNaratorTurn() {
- waitAndClick(this.cheatsBtn);
- waitAndClick(this.finishTurn);
- },
- useCheat(cheat) {
- waitAndClick(Helpers.desktopHeaderBtns("Cheats"));
- waitAndClick(Helpers.primaryButton(cheat));
- },
- skipToLastChapter() {
- waitAndClick(this.cheatsBtn);
- waitAndClick()
- },
- answerRCQ(number) {
- waitAndClick(this.answerBtn(number));
- waitAndClick(this.modalSubmitBtn);
- waitAndClick(this.modalSubmitBtn);
- },
- startReadingOrListening() {
- if ($(Helpers.popUpTitle("Prepare to listen")).isDisplayed()) {
- $(Helpers.primaryButton("OK")).click();
- } else {
- $(Helpers.primaryButton("Start reading")).click();
- }
- },
- doneReadingSection() {
- if ($(Helpers.popUpTitle("Are you sure you are done reading your section")).isDisplayed()) {
- $(Helpers.primaryButton("Yes")).click();
- }
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement