From 86f325c147cdf8dee1f3034c8b21bd9553a3f1c8 Mon Sep 17 00:00:00 2001 From: Thanh Nguyen Date: Mon, 25 Feb 2019 17:55:33 +0100 Subject: [PATCH 1/3] Updated some deprecated methods --- lib/helper/WebDriver.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/helper/WebDriver.js b/lib/helper/WebDriver.js index 573bad4a3..042a60878 100644 --- a/lib/helper/WebDriver.js +++ b/lib/helper/WebDriver.js @@ -795,7 +795,7 @@ class WebDriver extends Helper { const res = await this._locate(locator, true); assertElementExists(res, locator); - return forEachAsync(res, async el => this.browser.getElementAttribute(getElementId(el), 'value')); + return forEachAsync(res, async el => el.getValue()); } /** @@ -814,7 +814,7 @@ class WebDriver extends Helper { async grabAttributeFrom(locator, attr) { const res = await this._locate(locator, true); assertElementExists(res, locator); - return forEachAsync(res, async el => this.browser.getElementAttribute(getElementId(el), attr)); + return forEachAsync(res, async el => el.getAttribute(attr)); } /** @@ -1116,7 +1116,7 @@ class WebDriver extends Helper { const elemAmount = res.length; let attrs = await forEachAsync(res, async (el) => { - return forEachAsync(Object.keys(attributes), async attr => this.browser.getElementAttribute(getElementId(el), attr)); + return forEachAsync(Object.keys(attributes), async attr => el.getAttribute(attr)); }); const values = Object.keys(attributes).map(key => attributes[key]); @@ -1628,7 +1628,7 @@ class WebDriver extends Helper { async () => { const res = await findFields.call(this, field); if (!res || res.length === 0) return false; - const selected = await forEachAsync(res, async el => this.browser.getElementAttribute(getElementId(el), 'value')); + const selected = await forEachAsync(res, async el => el.getValue()); if (Array.isArray(selected)) { return selected.filter(part => part.indexOf(value) >= 0).length > 0; } @@ -2057,7 +2057,7 @@ async function proceedSeeField(assertType, field, value) { const proceedMultiple = async (fields) => { const fieldResults = toArray(await forEachAsync(fields, async (el) => { - return this.browser.getElementAttribute(getElementId(el), 'value'); + return el.getValue(); })); if (typeof value === 'boolean') { @@ -2076,13 +2076,13 @@ async function proceedSeeField(assertType, field, value) { const filterSelectedByValue = async (elements, value) => { return filterAsync(elements, async (el) => { const elementId = getElementId(el); - const currentValue = await this.browser.getElementAttribute(elementId, 'value'); + const currentValue = await el.getValue(); const isSelected = await this.browser.isElementSelected(elementId); return currentValue === value && isSelected; }); }; - const tag = await this.browser.getElementTagName(elemId); + const tag = await elem.getTagName(); if (tag === 'select') { const subOptions = await this.browser.findElementsFromElement(elemId, 'css', 'option'); @@ -2097,7 +2097,7 @@ async function proceedSeeField(assertType, field, value) { } if (tag === 'input') { - const fieldType = await this.browser.getElementAttribute(elemId, 'type'); + const fieldType = await elem.getAttribute('type'); if (fieldType === 'checkbox' || fieldType === 'radio') { if (typeof value === 'boolean') { From c8ed3d9913b0dc43329d7ccaa83f128082a666a8 Mon Sep 17 00:00:00 2001 From: Thanh Nguyen Date: Fri, 1 Mar 2019 11:58:56 +0100 Subject: [PATCH 2/3] cr fixes --- lib/helper/WebDriver.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/helper/WebDriver.js b/lib/helper/WebDriver.js index 042a60878..11722ad5d 100644 --- a/lib/helper/WebDriver.js +++ b/lib/helper/WebDriver.js @@ -2076,7 +2076,7 @@ async function proceedSeeField(assertType, field, value) { const filterSelectedByValue = async (elements, value) => { return filterAsync(elements, async (el) => { const elementId = getElementId(el); - const currentValue = await el.getValue(); + const currentValue = await this.browser.isW3C ? el.getValue() : this.browser.getElementAttribute(elementId, 'value'); const isSelected = await this.browser.isElementSelected(elementId); return currentValue === value && isSelected; }); From 56f83c2fd4cf007cf62ab2e95ff3e46ecc902165 Mon Sep 17 00:00:00 2001 From: Thanh Nguyen Date: Fri, 1 Mar 2019 12:20:51 +0100 Subject: [PATCH 3/3] cr fixes --- lib/helper/WebDriver.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/helper/WebDriver.js b/lib/helper/WebDriver.js index 11722ad5d..bce658162 100644 --- a/lib/helper/WebDriver.js +++ b/lib/helper/WebDriver.js @@ -2057,7 +2057,8 @@ async function proceedSeeField(assertType, field, value) { const proceedMultiple = async (fields) => { const fieldResults = toArray(await forEachAsync(fields, async (el) => { - return el.getValue(); + const elementId = getElementId(el); + return this.browser.isW3C ? el.getValue() : this.browser.getElementAttribute(elementId, 'value'); })); if (typeof value === 'boolean') { @@ -2076,7 +2077,7 @@ async function proceedSeeField(assertType, field, value) { const filterSelectedByValue = async (elements, value) => { return filterAsync(elements, async (el) => { const elementId = getElementId(el); - const currentValue = await this.browser.isW3C ? el.getValue() : this.browser.getElementAttribute(elementId, 'value'); + const currentValue = this.browser.isW3C ? await el.getValue() : await this.browser.getElementAttribute(elementId, 'value'); const isSelected = await this.browser.isElementSelected(elementId); return currentValue === value && isSelected; });