From cead1ecd02176314806b60650d6688be63b86aa2 Mon Sep 17 00:00:00 2001 From: toddtarsi Date: Mon, 15 Jul 2024 22:59:19 -0500 Subject: [PATCH] v13 and nested key handling --- packages/browser-info/package.json | 2 +- .../code-export-csharp-commons/package.json | 4 +- .../code-export-csharp-nunit/package.json | 4 +- .../code-export-csharp-xunit/package.json | 6 +- packages/code-export-java-junit/package.json | 4 +- .../code-export-javascript-mocha/package.json | 4 +- .../code-export-python-pytest/package.json | 4 +- packages/code-export-ruby-rspec/package.json | 4 +- packages/get-driver/package.json | 2 +- packages/selenium-ide/package.json | 26 +++---- packages/side-api/package.json | 10 +-- packages/side-code-export/package.json | 6 +- packages/side-commons/package.json | 2 +- packages/side-example-suite/package.json | 6 +- packages/side-migrate/package.json | 2 +- packages/side-model/package.json | 2 +- packages/side-runner/package.json | 6 +- packages/side-runtime/package.json | 12 +-- packages/side-runtime/src/variables.ts | 36 ++++++++- packages/side-testkit/package.json | 2 +- packages/webdriver-testkit/package.json | 6 +- pnpm-lock.yaml | 74 +++++++++---------- tests/examples/echo.side | 18 +++++ 23 files changed, 145 insertions(+), 97 deletions(-) diff --git a/packages/browser-info/package.json b/packages/browser-info/package.json index 0b0500e107..3a47c10ab0 100644 --- a/packages/browser-info/package.json +++ b/packages/browser-info/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/browser-info", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Get information about installed browsers", "author": "Tomer ", diff --git a/packages/code-export-csharp-commons/package.json b/packages/code-export-csharp-commons/package.json index 7873cd61aa..7300e25a54 100644 --- a/packages/code-export-csharp-commons/package.json +++ b/packages/code-export-csharp-commons/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/code-export-csharp-commons", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Commons for exporting Selenium IDE project contents to C#", "repository": "https://github.com/SeleniumHQ/selenium-ide", @@ -21,6 +21,6 @@ "side-code-export": "^4.0.11" }, "devDependencies": { - "@seleniumhq/side-model": "4.0.12" + "@seleniumhq/side-model": "4.0.13" } } diff --git a/packages/code-export-csharp-nunit/package.json b/packages/code-export-csharp-nunit/package.json index ca62865b41..e565ce9948 100644 --- a/packages/code-export-csharp-nunit/package.json +++ b/packages/code-export-csharp-nunit/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/code-export-csharp-nunit", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Export Selenium IDE project contents to C# NUnit", "repository": "https://github.com/SeleniumHQ/selenium-ide", @@ -18,7 +18,7 @@ "main": "dist/index.js", "types": "dist/index.d.ts", "dependencies": { - "@seleniumhq/code-export-csharp-commons": "4.0.12", + "@seleniumhq/code-export-csharp-commons": "4.0.13", "side-code-export": "^4.0.11" }, "gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744" diff --git a/packages/code-export-csharp-xunit/package.json b/packages/code-export-csharp-xunit/package.json index 54cda7bb25..88a3acc7f5 100644 --- a/packages/code-export-csharp-xunit/package.json +++ b/packages/code-export-csharp-xunit/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/code-export-csharp-xunit", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Export Selenium IDE project contents to C# XUnit", "repository": "https://github.com/SeleniumHQ/selenium-ide", @@ -18,11 +18,11 @@ "main": "dist/index.js", "types": "dist/index.d.ts", "dependencies": { - "@seleniumhq/code-export-csharp-commons": "4.0.12", + "@seleniumhq/code-export-csharp-commons": "4.0.13", "side-code-export": "^4.0.11" }, "devDependencies": { - "@seleniumhq/side-model": "4.0.12" + "@seleniumhq/side-model": "4.0.13" }, "gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744" } diff --git a/packages/code-export-java-junit/package.json b/packages/code-export-java-junit/package.json index 55928b67f2..af158f72e2 100644 --- a/packages/code-export-java-junit/package.json +++ b/packages/code-export-java-junit/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/code-export-java-junit", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Export Selenium IDE project contents to Java JUnit", "repository": "https://github.com/SeleniumHQ/selenium-ide", @@ -20,7 +20,7 @@ "side-code-export": "^4.0.11" }, "devDependencies": { - "@seleniumhq/side-model": "4.0.12" + "@seleniumhq/side-model": "4.0.13" }, "gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744" } diff --git a/packages/code-export-javascript-mocha/package.json b/packages/code-export-javascript-mocha/package.json index 07963eedb4..f1bdac572f 100644 --- a/packages/code-export-javascript-mocha/package.json +++ b/packages/code-export-javascript-mocha/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/code-export-javascript-mocha", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Export Selenium IDE project contents to JavaScript Mocha", "repository": "https://github.com/SeleniumHQ/selenium-ide", @@ -20,7 +20,7 @@ "side-code-export": "^4.0.11" }, "devDependencies": { - "@seleniumhq/side-model": "4.0.12" + "@seleniumhq/side-model": "4.0.13" }, "gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744" } diff --git a/packages/code-export-python-pytest/package.json b/packages/code-export-python-pytest/package.json index 27e53e92d3..4864a5cd6f 100644 --- a/packages/code-export-python-pytest/package.json +++ b/packages/code-export-python-pytest/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/code-export-python-pytest", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Export Selenium IDE project contents to Python pytest", "repository": "https://github.com/SeleniumHQ/selenium-ide", @@ -20,7 +20,7 @@ "side-code-export": "^4.0.11" }, "devDependencies": { - "@seleniumhq/side-model": "4.0.12" + "@seleniumhq/side-model": "4.0.13" }, "gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744" } diff --git a/packages/code-export-ruby-rspec/package.json b/packages/code-export-ruby-rspec/package.json index 3ac31de27c..0389b67674 100644 --- a/packages/code-export-ruby-rspec/package.json +++ b/packages/code-export-ruby-rspec/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/code-export-ruby-rspec", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Export Selenium IDE project contents to Ruby RSpec", "repository": "https://github.com/SeleniumHQ/selenium-ide", @@ -20,7 +20,7 @@ "side-code-export": "^4.0.11" }, "devDependencies": { - "@seleniumhq/side-model": "4.0.12" + "@seleniumhq/side-model": "4.0.13" }, "gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744" } diff --git a/packages/get-driver/package.json b/packages/get-driver/package.json index a94b5b7329..346beec8e2 100644 --- a/packages/get-driver/package.json +++ b/packages/get-driver/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/get-driver", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Download browser drivers", "author": "Tomer ", diff --git a/packages/selenium-ide/package.json b/packages/selenium-ide/package.json index 95c4d8b6c2..f6ac30e711 100644 --- a/packages/selenium-ide/package.json +++ b/packages/selenium-ide/package.json @@ -1,6 +1,6 @@ { "name": "selenium-ide", - "version": "4.0.1-beta.14", + "version": "4.0.1-beta.15", "private": false, "description": "Selenium IDE electron app", "author": "Todd ", @@ -118,17 +118,17 @@ "@fontsource/roboto": "^5.0.8", "@mui/icons-material": "^5.15.13", "@mui/material": "^5.15.13", - "@seleniumhq/code-export-csharp-nunit": "4.0.12", - "@seleniumhq/code-export-csharp-xunit": "4.0.12", - "@seleniumhq/code-export-java-junit": "4.0.12", - "@seleniumhq/code-export-javascript-mocha": "4.0.12", - "@seleniumhq/code-export-python-pytest": "4.0.12", - "@seleniumhq/code-export-ruby-rspec": "4.0.12", - "@seleniumhq/get-driver": "4.0.12", - "@seleniumhq/side-api": "4.0.12", - "@seleniumhq/side-commons": "4.0.12", - "@seleniumhq/side-model": "4.0.12", - "@seleniumhq/side-runtime": "4.0.12", + "@seleniumhq/code-export-csharp-nunit": "4.0.13", + "@seleniumhq/code-export-csharp-xunit": "4.0.13", + "@seleniumhq/code-export-java-junit": "4.0.13", + "@seleniumhq/code-export-javascript-mocha": "4.0.13", + "@seleniumhq/code-export-python-pytest": "4.0.13", + "@seleniumhq/code-export-ruby-rspec": "4.0.13", + "@seleniumhq/get-driver": "4.0.13", + "@seleniumhq/side-api": "4.0.13", + "@seleniumhq/side-commons": "4.0.13", + "@seleniumhq/side-model": "4.0.13", + "@seleniumhq/side-runtime": "4.0.13", "dnd-core": "^16.0.1", "electron-chromedriver": "^28.0.0", "electron-log": "^5.1.0", @@ -150,7 +150,7 @@ }, "devDependencies": { "@medv/finder": "^1.1.1", - "@seleniumhq/browser-info": "4.0.12", + "@seleniumhq/browser-info": "4.0.13", "@types/copy-webpack-plugin": "8.0.1", "@types/electron-devtools-installer": "^2.2.5", "@types/fs-extra": "^11.0.1", diff --git a/packages/side-api/package.json b/packages/side-api/package.json index 53953985e4..06c7aee912 100644 --- a/packages/side-api/package.json +++ b/packages/side-api/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/side-api", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Selenium IDE API command shapes and such.", "author": "Todd Tarsi ", @@ -20,10 +20,10 @@ "dist" ], "dependencies": { - "@seleniumhq/browser-info": "4.0.12", - "@seleniumhq/get-driver": "4.0.12", - "@seleniumhq/side-model": "4.0.12", - "@seleniumhq/side-runtime": "4.0.12", + "@seleniumhq/browser-info": "4.0.13", + "@seleniumhq/get-driver": "4.0.13", + "@seleniumhq/side-model": "4.0.13", + "@seleniumhq/side-runtime": "4.0.13", "lodash": "^4.17.21" }, "devDependencies": { diff --git a/packages/side-code-export/package.json b/packages/side-code-export/package.json index 68d9054f25..c7063ec1e6 100644 --- a/packages/side-code-export/package.json +++ b/packages/side-code-export/package.json @@ -1,6 +1,6 @@ { "name": "side-code-export", - "version": "4.0.12", + "version": "4.0.13", "description": "Utils for code export from Selenium IDE", "repository": "https://github.com/SeleniumHQ/selenium-ide", "keywords": [ @@ -20,8 +20,8 @@ "main": "dist/index.js", "types": "dist/index.d.ts", "dependencies": { - "@seleniumhq/side-model": "4.0.12", - "@seleniumhq/side-runtime": "4.0.12", + "@seleniumhq/side-model": "4.0.13", + "@seleniumhq/side-runtime": "4.0.13", "commander": "^9.4.0" }, "gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744" diff --git a/packages/side-commons/package.json b/packages/side-commons/package.json index defb74e35e..810a0c44b9 100644 --- a/packages/side-commons/package.json +++ b/packages/side-commons/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/side-commons", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Selenium IDE common utilities", "author": "Tomer ", diff --git a/packages/side-example-suite/package.json b/packages/side-example-suite/package.json index 231a2ec170..72cd1fa22e 100644 --- a/packages/side-example-suite/package.json +++ b/packages/side-example-suite/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/side-example-suite", - "version": "4.0.12", + "version": "4.0.13", "private": true, "description": "Selenium IDE example suite, with tests, plugin, and export format", "author": "Todd ", @@ -18,10 +18,10 @@ }, "dependencies": { "side-code-export": "^4.0.11", - "@seleniumhq/code-export-python-pytest": "4.0.12" + "@seleniumhq/code-export-python-pytest": "4.0.13" }, "devDependencies": { - "@seleniumhq/side-api": "4.0.12" + "@seleniumhq/side-api": "4.0.13" }, "repository": { "type": "git", diff --git a/packages/side-migrate/package.json b/packages/side-migrate/package.json index 7e1542f0fd..33d5dce500 100644 --- a/packages/side-migrate/package.json +++ b/packages/side-migrate/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/side-migrate", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Selenium IDE format migrations", "author": "Tomer ", diff --git a/packages/side-model/package.json b/packages/side-model/package.json index 5594a8629e..eb04a11ef2 100644 --- a/packages/side-model/package.json +++ b/packages/side-model/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/side-model", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Selenium IDE shared models", "author": "Tomer ", diff --git a/packages/side-runner/package.json b/packages/side-runner/package.json index d4cc70194f..cf3cc62133 100644 --- a/packages/side-runner/package.json +++ b/packages/side-runner/package.json @@ -1,6 +1,6 @@ { "name": "selenium-side-runner", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Run Selenium IDE projects in cli", "repository": "https://github.com/SeleniumHQ/selenium-ide", @@ -23,8 +23,8 @@ ], "license": "Apache-2.0", "dependencies": { - "@seleniumhq/side-model": "4.0.12", - "@seleniumhq/side-runtime": "4.0.12", + "@seleniumhq/side-model": "4.0.13", + "@seleniumhq/side-runtime": "4.0.13", "commander": "^11.0.0", "glob": "^10.3.1", "jest": "^29.6.0", diff --git a/packages/side-runtime/package.json b/packages/side-runtime/package.json index eecbeba041..7afb63b18f 100644 --- a/packages/side-runtime/package.json +++ b/packages/side-runtime/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/side-runtime", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Selenium IDE playback and execution", "author": "Tomer ", @@ -25,13 +25,13 @@ "url": "https://github.com/SeleniumHQ/selenium-ide/issues" }, "devDependencies": { - "@seleniumhq/get-driver": "4.0.12", - "@seleniumhq/side-testkit": "4.0.12", - "@seleniumhq/webdriver-testkit": "4.0.12" + "@seleniumhq/get-driver": "4.0.13", + "@seleniumhq/side-testkit": "4.0.13", + "@seleniumhq/webdriver-testkit": "4.0.13" }, "dependencies": { - "@seleniumhq/side-commons": "4.0.12", - "@seleniumhq/side-model": "4.0.12", + "@seleniumhq/side-commons": "4.0.13", + "@seleniumhq/side-model": "4.0.13", "@types/selenium-webdriver": "^4.1.22", "selenium-webdriver": "^4.20.0" }, diff --git a/packages/side-runtime/src/variables.ts b/packages/side-runtime/src/variables.ts index 9080a3da2d..6bb8fe5c31 100644 --- a/packages/side-runtime/src/variables.ts +++ b/packages/side-runtime/src/variables.ts @@ -21,22 +21,52 @@ export default class Variables { } storedVars: Map + static getKeySegments(key: string) { + return key.split(/[.[\]]+/g).filter(Boolean) + } + get(key: string) { if (key.startsWith('env:')) { return process.env[key.slice(4)] } - return this.storedVars.get(key) + const [firstSegment, ...segments] = Variables.getKeySegments(key) + let returnValue = this.storedVars.get(firstSegment) + while (segments.length > 0) { + const segment = segments.shift()! + returnValue = returnValue[segment] + } + return returnValue } set(key: string, value: any) { - this.storedVars.set(key, value) + const [firstSegment, ...segments] = Variables.getKeySegments(key) + if (key === firstSegment) { + this.storedVars.set(key, value) + } else { + let returnValue = this.storedVars.get(firstSegment) + while (segments.length > 1) { + const segment = segments.shift()! + if (!returnValue[segment]) { + returnValue[segment] = {} + } + returnValue = returnValue[segment] + } + returnValue[segments[0]] = value + } } has(key: string) { if (key.startsWith('env:')) { return true } - return this.storedVars.has(key) + const [firstSegment, ...segments] = Variables.getKeySegments(key) + let returnValue = this.storedVars.get(firstSegment) + while (segments.length > 0) { + if (returnValue === undefined) return false + const segment = segments.shift()! + returnValue = returnValue[segment] + } + return returnValue !== undefined } delete(key: string) { diff --git a/packages/side-testkit/package.json b/packages/side-testkit/package.json index 59f3b1ceed..f01023a8ae 100644 --- a/packages/side-testkit/package.json +++ b/packages/side-testkit/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/side-testkit", - "version": "4.0.12", + "version": "4.0.13", "private": false, "description": "Selenium IDE test stuff", "author": "Tomer ", diff --git a/packages/webdriver-testkit/package.json b/packages/webdriver-testkit/package.json index 66e2b611b5..d5a1636084 100644 --- a/packages/webdriver-testkit/package.json +++ b/packages/webdriver-testkit/package.json @@ -1,6 +1,6 @@ { "name": "@seleniumhq/webdriver-testkit", - "version": "4.0.12", + "version": "4.0.13", "private": true, "description": "Manage test driver installation", "author": "Tomer ", @@ -30,8 +30,8 @@ "selenium-webdriver": "^4.20.0" }, "dependencies": { - "@seleniumhq/browser-info": "4.0.12", - "@seleniumhq/get-driver": "4.0.12", + "@seleniumhq/browser-info": "4.0.13", + "@seleniumhq/get-driver": "4.0.13", "fs-extra": "^8.1.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b8dc24b293..2279159aeb 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -135,13 +135,13 @@ importers: version: link:../side-code-export devDependencies: '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model packages/code-export-csharp-nunit: dependencies: '@seleniumhq/code-export-csharp-commons': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-csharp-commons side-code-export: specifier: ^4.0.11 @@ -150,14 +150,14 @@ importers: packages/code-export-csharp-xunit: dependencies: '@seleniumhq/code-export-csharp-commons': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-csharp-commons side-code-export: specifier: ^4.0.11 version: link:../side-code-export devDependencies: '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model packages/code-export-java-junit: @@ -167,7 +167,7 @@ importers: version: link:../side-code-export devDependencies: '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model packages/code-export-javascript-mocha: @@ -177,7 +177,7 @@ importers: version: link:../side-code-export devDependencies: '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model packages/code-export-python-pytest: @@ -187,7 +187,7 @@ importers: version: link:../side-code-export devDependencies: '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model packages/code-export-ruby-rspec: @@ -197,7 +197,7 @@ importers: version: link:../side-code-export devDependencies: '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model packages/get-driver: @@ -246,37 +246,37 @@ importers: specifier: ^5.15.13 version: 5.15.13(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(@types/react@18.2.15)(react-dom@18.2.0)(react@18.2.0) '@seleniumhq/code-export-csharp-nunit': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-csharp-nunit '@seleniumhq/code-export-csharp-xunit': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-csharp-xunit '@seleniumhq/code-export-java-junit': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-java-junit '@seleniumhq/code-export-javascript-mocha': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-javascript-mocha '@seleniumhq/code-export-python-pytest': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-python-pytest '@seleniumhq/code-export-ruby-rspec': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-ruby-rspec '@seleniumhq/get-driver': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../get-driver '@seleniumhq/side-api': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-api '@seleniumhq/side-commons': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-commons '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model '@seleniumhq/side-runtime': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-runtime dnd-core: specifier: ^16.0.1 @@ -337,7 +337,7 @@ importers: specifier: ^1.1.1 version: 1.1.3 '@seleniumhq/browser-info': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../browser-info '@types/copy-webpack-plugin': specifier: 8.0.1 @@ -424,16 +424,16 @@ importers: packages/side-api: dependencies: '@seleniumhq/browser-info': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../browser-info '@seleniumhq/get-driver': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../get-driver '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model '@seleniumhq/side-runtime': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-runtime lodash: specifier: ^4.17.21 @@ -474,10 +474,10 @@ importers: packages/side-code-export: dependencies: '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model '@seleniumhq/side-runtime': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-runtime commander: specifier: ^9.4.0 @@ -488,14 +488,14 @@ importers: packages/side-example-suite: dependencies: '@seleniumhq/code-export-python-pytest': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../code-export-python-pytest side-code-export: specifier: ^4.0.11 version: link:../side-code-export devDependencies: '@seleniumhq/side-api': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-api packages/side-migrate: @@ -525,10 +525,10 @@ importers: packages/side-runner: dependencies: '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model '@seleniumhq/side-runtime': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-runtime commander: specifier: ^11.0.0 @@ -580,10 +580,10 @@ importers: packages/side-runtime: dependencies: '@seleniumhq/side-commons': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-commons '@seleniumhq/side-model': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-model '@types/selenium-webdriver': specifier: ^4.1.22 @@ -593,13 +593,13 @@ importers: version: 4.20.0 devDependencies: '@seleniumhq/get-driver': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../get-driver '@seleniumhq/side-testkit': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../side-testkit '@seleniumhq/webdriver-testkit': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../webdriver-testkit packages/side-testkit: @@ -615,10 +615,10 @@ importers: packages/webdriver-testkit: dependencies: '@seleniumhq/browser-info': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../browser-info '@seleniumhq/get-driver': - specifier: 4.0.12 + specifier: 4.0.13 version: link:../get-driver fs-extra: specifier: ^8.1.0 diff --git a/tests/examples/echo.side b/tests/examples/echo.side index 44c995b2b2..a06e4ffc9b 100644 --- a/tests/examples/echo.side +++ b/tests/examples/echo.side @@ -27,6 +27,24 @@ "target": "This is a test string ${number}", "value": "", "id": "9e61266a-9cb0-49b6-b5bf-a362bd181b58" + }, + { + "command": "executeScript", + "target": "return [1, 2, 3];", + "value": "array", + "id": "7899df2b-d53c-404b-b0c7-1e36e6c49d88" + }, + { + "command": "echo", + "target": "This is a test string ${array.0}", + "value": "", + "id": "ab443535-6f3c-4f53-9f0c-a9d0f4d94adc" + }, + { + "command": "echo", + "target": "This is a test string ${array[0]}", + "value": "", + "id": "09287f73-2707-46a5-9573-03d11a611464" } ] }