-
-
Notifications
You must be signed in to change notification settings - Fork 747
Streamlined return values from grab* #2054
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Streamlined return values from grab* #2054
Conversation
b3ea0bf
to
2532164
Compare
I understand this incompatibility but it seems like a breaking change for current users. |
Anyway, this looks like a simplified version for the current code so I think it won't break anything |
@@ -944,8 +936,9 @@ class WebDriver extends Helper { | |||
async grabValueFrom(locator) { | |||
const res = await this._locate(locator, true); | |||
assertElementExists(res, locator); | |||
|
|||
return forEachAsync(res, async el => el.getValue()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
method returned array, now it returns array or string.
Others helpers have both variants.
@DavertMik , We should review helpers signature
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I think we need to do that for 3.0 release.
Maybe a better way would be to revert merged pull request and introduce a new policy for 3.0
A later fix would be fine for me as I have workarounds for that in my code anyways such that I can easily switch between puppeteer and webdriver configuration. I just stumbled upon that thing and I thought that it is a quick fix so I just did it. Anyways, is there a roadmap for a 3.0 release? |
* Streamlined return values from grab* (#2054) * fix: replace console.print with console.log Since `console.print()` does not exists 😄 * File system extended (#2034) * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * get changed into grab * Examples added * trailing spaces * fix: cannot grab for css attributes with hyphen (#2059) * Docs/remove jsdoc extra line (#2068) * docs: remove prepending line in JSDoc generator * definitions: update generated types * fix: TestCafe grabAttributeFrom method not works (#2064) * fix: testcafe grabAttributeFrom * test: make skippable tests use mocha's skip * fix: TestCafe.grabValueFrom * build: add eslintignore for test output * test: unskip working TestCafe tests * test: remove skip form Nightmare tests * tests: skip testcafe webapi tests * tests: fix skips * #1911 - Regex for step Def file (#2043) * #1911 - Regex for step Def file * #1911 : Regex for step Def file,Fixed hound reviews * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 - Removing commented lines of code * #1911 - Modifying so that decision is based on Array or not * #1911 - Fixing Hound reviews * #1911 - Amending for code review * #1911 - Amending for code review - 3 * Allows overriding default Polly config in MockRequest (#2060) * Add Interoperable Code for supporting both CJS & ESM environments (#2075) * Added Interoperable Code Add Interoperable Code to support both CJS and ESM environments. * Linter Fixes * fix(docs): add info about _after hook in helper * try to shorten the test execution time * Update package.json * Update .travis.yml * Update .travis.yml * Update .travis.yml * Update .travis.yml * Update .travis.yml Co-authored-by: Richard Petersen <Holorium@users.noreply.github.com> Co-authored-by: Sébastien Chopin <seb@nuxtjs.com> Co-authored-by: Ahmed Yılmaz <ahmet6yilmaz@gmail.com> Co-authored-by: Evgeniy Lukoyanov <11647141+elukoyanov@users.noreply.github.com> Co-authored-by: Srivatsan <vatsan34@gmail.com> Co-authored-by: Daniel Eckermann <danieleckermann@gmail.com> Co-authored-by: K.C.Ashish Kumar <kcak11@gmail.com> Co-authored-by: Alexandr Vorobey <sashavorobey95@gmail.com>
* Streamlined return values from grab* (#2054) * fix: replace console.print with console.log Since `console.print()` does not exists 😄 * File system extended (#2034) * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * get changed into grab * Examples added * trailing spaces * fix: cannot grab for css attributes with hyphen (#2059) * Docs/remove jsdoc extra line (#2068) * docs: remove prepending line in JSDoc generator * definitions: update generated types * fix: TestCafe grabAttributeFrom method not works (#2064) * fix: testcafe grabAttributeFrom * test: make skippable tests use mocha's skip * fix: TestCafe.grabValueFrom * build: add eslintignore for test output * test: unskip working TestCafe tests * test: remove skip form Nightmare tests * tests: skip testcafe webapi tests * tests: fix skips * #1911 - Regex for step Def file (#2043) * #1911 - Regex for step Def file * #1911 : Regex for step Def file,Fixed hound reviews * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 - Removing commented lines of code * #1911 - Modifying so that decision is based on Array or not * #1911 - Fixing Hound reviews * #1911 - Amending for code review * #1911 - Amending for code review - 3 * Allows overriding default Polly config in MockRequest (#2060) * Add Interoperable Code for supporting both CJS & ESM environments (#2075) * Added Interoperable Code Add Interoperable Code to support both CJS and ESM environments. * Linter Fixes * fix(docs): add info about _after hook in helper * add I.say() to allure * Remove I say Co-Authored-By: Michael Bodnarchuk <DavertMik@users.noreply.github.com> Co-authored-by: Richard Petersen <Holorium@users.noreply.github.com> Co-authored-by: Sébastien Chopin <seb@nuxtjs.com> Co-authored-by: Ahmed Yılmaz <ahmet6yilmaz@gmail.com> Co-authored-by: Evgeniy Lukoyanov <11647141+elukoyanov@users.noreply.github.com> Co-authored-by: Srivatsan <vatsan34@gmail.com> Co-authored-by: Daniel Eckermann <danieleckermann@gmail.com> Co-authored-by: K.C.Ashish Kumar <kcak11@gmail.com> Co-authored-by: Alexandr Vorobey <sashavorobey95@gmail.com> Co-authored-by: Michael Bodnarchuk <DavertMik@users.noreply.github.com>
* Streamlined return values from grab* (#2054) * fix: replace console.print with console.log Since `console.print()` does not exists 😄 * File system extended (#2034) * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * get changed into grab * Examples added * trailing spaces * fix: cannot grab for css attributes with hyphen (#2059) * Docs/remove jsdoc extra line (#2068) * docs: remove prepending line in JSDoc generator * definitions: update generated types * fix: TestCafe grabAttributeFrom method not works (#2064) * fix: testcafe grabAttributeFrom * test: make skippable tests use mocha's skip * fix: TestCafe.grabValueFrom * build: add eslintignore for test output * test: unskip working TestCafe tests * test: remove skip form Nightmare tests * tests: skip testcafe webapi tests * tests: fix skips * #1911 - Regex for step Def file (#2043) * #1911 - Regex for step Def file * #1911 : Regex for step Def file,Fixed hound reviews * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 - Removing commented lines of code * #1911 - Modifying so that decision is based on Array or not * #1911 - Fixing Hound reviews * #1911 - Amending for code review * #1911 - Amending for code review - 3 * Allows overriding default Polly config in MockRequest (#2060) * Add Interoperable Code for supporting both CJS & ESM environments (#2075) * Added Interoperable Code Add Interoperable Code to support both CJS and ESM environments. * Linter Fixes * fix(docs): add info about _after hook in helper * fix the ambiguous description * CR fix Co-authored-by: Richard Petersen <Holorium@users.noreply.github.com> Co-authored-by: Sébastien Chopin <seb@nuxtjs.com> Co-authored-by: Ahmed Yılmaz <ahmet6yilmaz@gmail.com> Co-authored-by: Evgeniy Lukoyanov <11647141+elukoyanov@users.noreply.github.com> Co-authored-by: Srivatsan <vatsan34@gmail.com> Co-authored-by: Daniel Eckermann <danieleckermann@gmail.com> Co-authored-by: K.C.Ashish Kumar <kcak11@gmail.com> Co-authored-by: Alexandr Vorobey <sashavorobey95@gmail.com>
…#2140) * Streamlined return values from grab* (#2054) * fix: replace console.print with console.log Since `console.print()` does not exists 😄 * File system extended (#2034) * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * get changed into grab * Examples added * trailing spaces * fix: cannot grab for css attributes with hyphen (#2059) * Docs/remove jsdoc extra line (#2068) * docs: remove prepending line in JSDoc generator * definitions: update generated types * fix: TestCafe grabAttributeFrom method not works (#2064) * fix: testcafe grabAttributeFrom * test: make skippable tests use mocha's skip * fix: TestCafe.grabValueFrom * build: add eslintignore for test output * test: unskip working TestCafe tests * test: remove skip form Nightmare tests * tests: skip testcafe webapi tests * tests: fix skips * #1911 - Regex for step Def file (#2043) * #1911 - Regex for step Def file * #1911 : Regex for step Def file,Fixed hound reviews * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 - Removing commented lines of code * #1911 - Modifying so that decision is based on Array or not * #1911 - Fixing Hound reviews * #1911 - Amending for code review * #1911 - Amending for code review - 3 * Allows overriding default Polly config in MockRequest (#2060) * Add Interoperable Code for supporting both CJS & ESM environments (#2075) * Added Interoperable Code Add Interoperable Code to support both CJS and ESM environments. * Linter Fixes * fix(docs): add info about _after hook in helper * some improvements * improve the way to get uuid * move private func to the end * mocha update is not here Co-authored-by: Richard Petersen <Holorium@users.noreply.github.com> Co-authored-by: Sébastien Chopin <seb@nuxtjs.com> Co-authored-by: Ahmed Yılmaz <ahmet6yilmaz@gmail.com> Co-authored-by: Evgeniy Lukoyanov <11647141+elukoyanov@users.noreply.github.com> Co-authored-by: Srivatsan <vatsan34@gmail.com> Co-authored-by: Daniel Eckermann <danieleckermann@gmail.com> Co-authored-by: K.C.Ashish Kumar <kcak11@gmail.com> Co-authored-by: Alexandr Vorobey <sashavorobey95@gmail.com>
* Streamlined return values from grab* (#2054) * fix: replace console.print with console.log Since `console.print()` does not exists 😄 * File system extended (#2034) * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * check file exists with given substring * tests are added * deleted trailing-space * removed spaces * compatibility for node 8 * assertion message fixed * get changed into grab * Examples added * trailing spaces * fix: cannot grab for css attributes with hyphen (#2059) * Docs/remove jsdoc extra line (#2068) * docs: remove prepending line in JSDoc generator * definitions: update generated types * fix: TestCafe grabAttributeFrom method not works (#2064) * fix: testcafe grabAttributeFrom * test: make skippable tests use mocha's skip * fix: TestCafe.grabValueFrom * build: add eslintignore for test output * test: unskip working TestCafe tests * test: remove skip form Nightmare tests * tests: skip testcafe webapi tests * tests: fix skips * #1911 - Regex for step Def file (#2043) * #1911 - Regex for step Def file * #1911 : Regex for step Def file,Fixed hound reviews * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 : Regex for step Def file,Fixed hound reviews - 1 * #1911 - Removing commented lines of code * #1911 - Modifying so that decision is based on Array or not * #1911 - Fixing Hound reviews * #1911 - Amending for code review * #1911 - Amending for code review - 3 * Allows overriding default Polly config in MockRequest (#2060) * Add Interoperable Code for supporting both CJS & ESM environments (#2075) * Added Interoperable Code Add Interoperable Code to support both CJS and ESM environments. * Linter Fixes * fix(docs): add info about _after hook in helper * (fix): no custom output folder is created with run-worker * CR fix * verify the output folder is created Co-authored-by: Richard Petersen <Holorium@users.noreply.github.com> Co-authored-by: Sébastien Chopin <seb@nuxtjs.com> Co-authored-by: Ahmed Yılmaz <ahmet6yilmaz@gmail.com> Co-authored-by: Evgeniy Lukoyanov <11647141+elukoyanov@users.noreply.github.com> Co-authored-by: Srivatsan <vatsan34@gmail.com> Co-authored-by: Daniel Eckermann <danieleckermann@gmail.com> Co-authored-by: K.C.Ashish Kumar <kcak11@gmail.com> Co-authored-by: Alexandr Vorobey <sashavorobey95@gmail.com>
Motivation/Description of the PR
Applicable helpers:
I just stumbled upon the issue, that the return values from certain grab*-functions are different in webdriver and puppeteer, when just a single element has been found. This PR affects the functions
grabValueFrom
,grabCssPropertyFrom
andgrabAttributeFrom
for webdriver. As Puppeteer always returns just the element when the selector just found one.grabTextFrom
andgrabHTMLFrom
webdriver does the same thing. Therefore, I applied this functionality also to the above mentioned functions.Type of change
Checklist:
npm run docs
)npm run lint
)npm test
)