async selectDocumentTab() { await this.selectTab( 'Document' ); return await driverHelper.waitTillPresentAndDisplayed( this.driver, By.css( '.components-panel' ) ); }
async selectMyHome() { return await driverHelper.clickWhenClickable( this.driver, By.css( '.menu-link-text[data-e2e-sidebar="My Home"]' ) ); }
async enterText( text ) { const appenderSelector = By.css( '.block-editor-default-block-appender' ); const paragraphSelector = By.css( 'p.block-editor-rich-text__editable:first-of-type' ); await driverHelper.clickWhenClickable( this.driver, appenderSelector ); await driverHelper.waitTillPresentAndDisplayed( this.driver, paragraphSelector ); return await this.driver.findElement( paragraphSelector ).sendKeys( text ); }
async edit() { await this.driver.switchTo().defaultContent(); return await driverHelper.clickWhenClickable( this.driver, By.css( '.button.web-preview__edit' ) ); }
async clickProfileLink() { const profileSelector = by.css( 'a.masterbar__item-me' ); return await driverHelper.clickWhenClickable( this.driver, profileSelector, this.explicitWaitMS ); }
async dismissPageTemplateSelector() { if ( await driverHelper.isElementPresent( this.driver, By.css( '.page-template-modal' ) ) ) { const useBlankButton = await this.driver.findElement( By.css( '.page-template-modal__buttons .components-button.is-primary' ) ); await this.driver.executeScript( 'arguments[0].click()', useBlankButton ); } }
constructor( driver ) { super( driver, By.css( '.edit-post-header' ) ); this.publishSelector = By.css( '.editor-post-publish-panel__header-publish-button button.editor-post-publish-button' ); this.publishingSpinnerSelector = By.css( '.editor-post-publish-panel__content .components-spinner' ); this.prePublishButtonSelector = By.css( '.editor-post-publish-panel__toggle' ); this.publishHeaderSelector = By.css( '.editor-post-publish-panel__header' ); this.editoriFrameSelector = By.css( '.calypsoify.is-iframe iframe' ); }
async hideGdprBanner() { const gdprBannerButton = By.css( '.gdpr-banner__acknowledge-button' ); try { await driverHelper.waitTillPresentAndDisplayed( this.driver, gdprBannerButton, 3000 ); await driverHelper.clickWhenClickable( this.driver, gdprBannerButton ); return await driverHelper.waitTillNotPresent( this.driver, gdprBannerButton, 3000 ); } catch ( e ) { console.log( 'GDPR button is not present.' ); // eslint-disable-line no-console return true; } }
async closePublishedPanel() { const closeButton = await this.driver.findElement( By.css( '.editor-post-publish-panel__header button[aria-label="Close panel"]' ) ); return await this.driver.executeScript( 'arguments[0].click();', closeButton ); }
async isChecklistPresent() { return await driverHelper.isEventuallyPresentAndDisplayed( this.driver, By.css( '.checklist__tasks' ), 20000 ); }
async openCreateAccountPage() { const element = By.css( '.auth__links a' ); await driverHelper.isEventuallyPresentAndDisplayed( this.driver, element ); return await driverHelper.clickWhenClickable( this.driver, element ); }
async close() { await this.driver.switchTo().defaultContent(); return await driverHelper.clickWhenClickable( this.driver, By.css( 'button.web-preview__close' ) ); }