Skip to content

Commit d2d06d7

Browse files
committed
more resilient not present check
1 parent d02d136 commit d2d06d7

File tree

7 files changed

+49
-16
lines changed

7 files changed

+49
-16
lines changed

packages/selenium-ide/package.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@seleniumhq/selenium-ide",
3-
"version": "4.0.0-alpha.48",
3+
"version": "4.0.0-alpha.49",
44
"private": true,
55
"description": "Selenium IDE electron app",
66
"author": "Todd <[email protected]>",
@@ -106,9 +106,9 @@
106106
"@seleniumhq/code-export-ruby-rspec": "^4.0.0-alpha.1",
107107
"side-code-export": "^4.0.0-alpha.11",
108108
"@seleniumhq/get-driver": "^4.0.0-alpha.1",
109-
"@seleniumhq/side-api": "^4.0.0-alpha.30",
109+
"@seleniumhq/side-api": "^4.0.0-alpha.31",
110110
"@seleniumhq/side-model": "^4.0.0-alpha.4",
111-
"@seleniumhq/side-runtime": "^4.0.0-alpha.29",
111+
"@seleniumhq/side-runtime": "^4.0.0-alpha.30",
112112
"dnd-core": "^16.0.1",
113113
"electron-chromedriver": "^25.3.0",
114114
"electron-log": "^4.4.8",

packages/side-api/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@seleniumhq/side-api",
3-
"version": "4.0.0-alpha.30",
3+
"version": "4.0.0-alpha.31",
44
"private": false,
55
"description": "Selenium IDE API command shapes and such",
66
"author": "Todd Tarsi <[email protected]>",
@@ -20,7 +20,7 @@
2020
"@seleniumhq/browser-info": "^4.0.0-alpha.1",
2121
"@seleniumhq/get-driver": "^4.0.0-alpha.2",
2222
"@seleniumhq/side-model": "^4.0.0-alpha.4",
23-
"@seleniumhq/side-runtime": "^4.0.0-alpha.29",
23+
"@seleniumhq/side-runtime": "^4.0.0-alpha.30",
2424
"lodash": "^4.17.21"
2525
},
2626
"devDependencies": {

packages/side-code-export/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "side-code-export",
3-
"version": "4.0.0-alpha.11",
3+
"version": "4.0.0-alpha.12",
44
"description": "Utils for code export from Selenium IDE",
55
"repository": "https://github.com/SeleniumHQ/selenium-ide",
66
"keywords": [
@@ -21,7 +21,7 @@
2121
"types": "dist/index.d.ts",
2222
"dependencies": {
2323
"@seleniumhq/side-model": "^4.0.0-alpha.4",
24-
"@seleniumhq/side-runtime": "^4.0.0-alpha.26",
24+
"@seleniumhq/side-runtime": "^4.0.0-alpha.30",
2525
"commander": "^9.4.0"
2626
},
2727
"gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744"

packages/side-runner/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "selenium-side-runner",
3-
"version": "4.0.0-alpha.58",
3+
"version": "4.0.0-alpha.59",
44
"private": false,
55
"description": "Run Selenium IDE projects in cli",
66
"repository": "https://github.com/SeleniumHQ/selenium-ide",
@@ -24,7 +24,7 @@
2424
"license": "Apache-2.0",
2525
"dependencies": {
2626
"@seleniumhq/side-model": "^4.0.0-alpha.4",
27-
"@seleniumhq/side-runtime": "^4.0.0-alpha.29",
27+
"@seleniumhq/side-runtime": "^4.0.0-alpha.30",
2828
"commander": "^11.0.0",
2929
"glob": "^10.3.1",
3030
"jest": "^29.6.0",

packages/side-runtime/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@seleniumhq/side-runtime",
3-
"version": "4.0.0-alpha.29",
3+
"version": "4.0.0-alpha.30",
44
"private": false,
55
"description": "Selenium IDE playback and execution",
66
"author": "Tomer <[email protected]>",

packages/side-runtime/src/webdriver.ts

+11-1
Original file line numberDiff line numberDiff line change
@@ -768,7 +768,17 @@ export default class WebDriverExecutor {
768768
const parsedLocator = parseLocator(locator)
769769
const elements = await this.driver.findElements(parsedLocator)
770770
if (elements.length !== 0) {
771-
await this.driver.wait(until.stalenessOf(elements[0]), parseInt(timeout))
771+
const noElementPresentCondition = new Condition(
772+
'for element to not be present',
773+
async () => {
774+
const elements = await this.driver.findElements(parsedLocator)
775+
return elements.length === 0
776+
}
777+
)
778+
await this.driver.wait<boolean>(
779+
noElementPresentCondition,
780+
Number(timeout)
781+
)
772782
}
773783
}
774784

pnpm-lock.yaml

+28-5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)