diff --git a/lib/_init.js b/lib/_init.js index 3c7efde..d8c2d36 100644 --- a/lib/_init.js +++ b/lib/_init.js @@ -3,7 +3,6 @@ const taiko = require("taiko"); const path = require("path"); const helpers = require("./_helpers"); -const { waitFor } = require("taiko"); const headless = process.env.headless_chrome || 'true'; const browser_for_each_scenario = process.env.browser_for_each_scenario; @@ -58,8 +57,8 @@ afterStep(async () => { afterScenario(async () => { await gauge.screenshot({ encoding: 'base64' }); - if (process.env.sleep_timeout) { - await taiko.waitFor(Number(process.env.sleep_timeout)); + if (process.env.sleep_after_scenario) { + await taiko.waitFor(Number(process.env.sleep_after_scenario)); } if (browser_for_each_scenario === "true" && (!open_browser_after_test || open_browser_after_test === 'false')) { diff --git a/lib/_pageElement.js b/lib/_pageElement.js index 85fe2d8..1263531 100644 --- a/lib/_pageElement.js +++ b/lib/_pageElement.js @@ -100,17 +100,17 @@ const getProximitySelectors = async (taiko, element) => { switch (helperValue) { case "toLeftOf": - return taiko.toLeftOf(elementValue); + return await taiko.toLeftOf(elementValue); case "toRightOf": - return taiko.toRightOf(elementValue); + return await taiko.toRightOf(elementValue); case "above": - return taiko.above(elementValue); + return await taiko.above(elementValue); case "below": - return taiko.below(elementValue); + return await taiko.below(elementValue); case "near": - return taiko.near(elementValue); + return await taiko.near(elementValue); case "within": - return taiko.within(elementValue); + return await taiko.within(elementValue); default: break; } @@ -125,7 +125,7 @@ async function getFileContent(path) { exports.getPageElement = async (taiko, element) => { const _element = await getHelper(taiko, element); if (_element !== element) { - return _element; + return await _element; } let elementText; @@ -157,7 +157,7 @@ exports.getPageElement = async (taiko, element) => { return await taiko.$(elementLocatorValue); } - return element; + return await element; } exports.checkElementState = async (taiko, element, elementState) => { @@ -165,16 +165,16 @@ exports.checkElementState = async (taiko, element, elementState) => { switch (elementState) { case "exist": case "exists": - await this.scrollToElementView(taiko, pageElement); + await this.scrollToElementView(taiko, await pageElement); await taiko.waitFor(async () => (await pageElement.exists())); break; case "displayed": case "visible": - await this.scrollToElementView(taiko, pageElement); + await this.scrollToElementView(taiko, await pageElement); await taiko.waitFor(pageElement); break; case "enabled": - await this.scrollToElementView(taiko, pageElement); + await this.scrollToElementView(taiko, await pageElement); await taiko.waitFor(async () => !(await pageElement.isDisabled())); break; case "not exists": @@ -195,7 +195,7 @@ exports.checkElementState = async (taiko, element, elementState) => { break; case "not enabled": case "disabled": - await this.scrollToElementView(taiko, pageElement); + await this.scrollToElementView(taiko, await pageElement); await taiko.waitFor(async () => (await pageElement.isDisabled())); break; default: diff --git a/lib/page_steps_continue_on_failure.js b/lib/page_steps_continue_on_failure.js index 6b2c9a0..95d1584 100644 --- a/lib/page_steps_continue_on_failure.js +++ b/lib/page_steps_continue_on_failure.js @@ -11,6 +11,12 @@ step(["Verify ", "Verify is "] await checkElementState(taiko, element, elementState); }); +step(["Verify ", "Verify is "], + {continueOnFailure: true}, async (element, elementText, elementState) => { + element = element + " with text " + helpers.getValue(elementText); + await checkElementState(taiko, element, elementState); +}); + step("Verify text is ", {continueOnFailure: true}, async (element, elementText) => { elementText = helpers.getValue(elementText); diff --git a/package.json b/package.json index 49902a6..cf13ff6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@softrams/gauge-taiko-steps", - "version": "0.1.2", + "version": "0.1.3", "description": "Implementation of common test steps with Taiko driver for writing tests with Gauge framework", "main": "index.js", "scripts": {