From f10cd8964765cf81a63c3674afcd7e85f659cb4a Mon Sep 17 00:00:00 2001 From: Thomas Nordquist Date: Sun, 3 Mar 2019 16:24:55 +0100 Subject: [PATCH] Demonstrate json formatting --- src/spec/scenarios/showJsonFormatting.ts | 19 +++++++++++++++---- src/spec/webdriverio.ts | 4 ++++ 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/spec/scenarios/showJsonFormatting.ts b/src/spec/scenarios/showJsonFormatting.ts index f0465c6..2a7acdf 100644 --- a/src/spec/scenarios/showJsonFormatting.ts +++ b/src/spec/scenarios/showJsonFormatting.ts @@ -1,17 +1,28 @@ -import { clickOn, sleep, writeText, delteTextWithBackspaces, expandTopic, moveToCenterOfElement, showText } from '../util' import { Browser } from 'webdriverio' +import { + clickOn, + sleep, +} from '../util' export async function showJsonFormatting(browser: Browser) { + const editor = await browser.$('//*[contains(@class, "ace_editor")]') + const formatJsonButton = await browser.$('#sidebar-publish-format-json') const payloadInput = await browser.$('//*[contains(@class, "ace_text-input")]') - await clickOn(payloadInput, browser) - await payloadInput.clearValue() + await clickOn(editor, browser) + await browser.keys(['\uE009', 'A']) // Ctrl + A + await browser.keys(['\uE000']) // End keyboard modifier + await browser.keys(['\uE003']) // Backspace + await sleep(300) await writeTextPayload(payloadInput, '{"action": "setState", "state": "on" }') + await sleep(300) + await clickOn(formatJsonButton, browser) + await sleep(1200) } async function writeTextPayload(payloadInput: any, text: string) { const chars = text.split('') for (const char of chars) { await payloadInput.setValue(char) - await sleep(200) + await sleep(10) } } diff --git a/src/spec/webdriverio.ts b/src/spec/webdriverio.ts index 50ae443..ceade16 100644 --- a/src/spec/webdriverio.ts +++ b/src/spec/webdriverio.ts @@ -75,6 +75,10 @@ async function doStuff() { await publishTopic(browser) await sleep(1000) + await showText('Write JSON with ease', 2000, browser, 'top') + await showJsonFormatting(browser) + await sleep(1000) + await showText('Copy to Clipboard', 2000, browser) await copyTopicToClipboard(browser) await hideText(browser)