diff --git a/test/functional/page_objects/visual_builder_page.ts b/test/functional/page_objects/visual_builder_page.ts index 0e305eaafc82f2..5b07cb0e534db9 100644 --- a/test/functional/page_objects/visual_builder_page.ts +++ b/test/functional/page_objects/visual_builder_page.ts @@ -131,8 +131,8 @@ export function VisualBuilderPageProvider({ getService, getPageObjects }: FtrPro } public async enterMarkdown(markdown: string) { - const input = await find.byCssSelector('.tvbMarkdownEditor__editor textarea'); await this.clearMarkdown(); + const input = await find.byCssSelector('.tvbMarkdownEditor__editor textarea'); await input.type(markdown); await PageObjects.common.sleep(3000); } @@ -147,14 +147,20 @@ export function VisualBuilderPageProvider({ getService, getPageObjects }: FtrPro const value = $('.ace_line').text(); if (value.length > 0) { log.debug('Clearing text area input'); - const input = await find.byCssSelector('.tvbMarkdownEditor__editor textarea'); - await input.clearValueWithKeyboard(); + this.waitForMarkdownTextAreaCleaned(); } return value.length === 0; }); } + public async waitForMarkdownTextAreaCleaned() { + const input = await find.byCssSelector('.tvbMarkdownEditor__editor textarea'); + await input.clearValueWithKeyboard(); + const text = await this.getMarkdownText(); + return text.length === 0; + } + public async getMarkdownText(): Promise { const el = await find.byCssSelector('.tvbEditorVisualization'); const text = await el.getVisibleText();