Skip to content
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

feat: Return web atom response #941

Merged
merged 5 commits into from
Oct 30, 2023
Merged

feat: Return web atom response #941

merged 5 commits into from
Oct 30, 2023

Conversation

pr4bh4sh
Copy link
Contributor

Fixes: #937

I'm not too happy with the return value.

return if (params.methodChain.size == 1) "success" else webViewInteraction.get().toString()

However, the request handler is handling all webAtom methods available in https://developer.android.com/reference/androidx/test/espresso/web/webdriver/DriverAtoms#public-methods. So not sure how to handle the different return types of all methods available.

@pr4bh4sh
Copy link
Contributor Author

Here's how the response looks for a few webAtom methods calls

[HTTP] --> POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/execute/sync
[HTTP] {"script":"mobile: webAtoms","args":[{"webviewElement":"4184be82-034d-4a0e-acc9-1af385c4e348","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}}]}]}
[debug] [EspressoDriver@a433 (cb9acb48)] Calling AppiumDriver.execute() with args: ["mobile: webAtoms",[{"webviewElement":"4184be82-034d-4a0e-acc9-1af385c4e348","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}}]}],"cb9acb48-ccfb-4b17-82de-a7b8d4303c35"]
[EspressoDriver@a433 (cb9acb48)] Executing native command 'mobile: webAtoms'
[debug] [EspressoDriver@a433 (cb9acb48)] Proxying [POST /appium/execute_mobile/web_atoms] to [POST http://127.0.0.1:52472/session/96b63585-c431-476e-9c37-555b9ebd4dcb/appium/execute_mobile/web_atoms] with body: {"webviewElement":"4184be82-034d-4a0e-acc9-1af385c4e348","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}}]}
[debug] [EspressoDriver@a433 (cb9acb48)] Got response with status 200: {"id":"a4c7bb04-f16e-41f1-a11d-0fef55e46a18","sessionId":"96b63585-c431-476e-9c37-555b9ebd4dcb","value":"success"}
[debug] [EspressoDriver@a433 (cb9acb48)] Responding to client with driver.execute() result: "success"
[HTTP] <-- POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/execute/sync 200 3328 ms - 19
[HTTP] --> POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/execute/sync
[HTTP] {"script":"mobile: webAtoms","args":[{"webviewElement":"1185cec4-7750-45b6-a67f-1f882f17d718","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"CLASS_NAME","value":"safety-centre__group-header"}}},{"name":"perform","atom":"webClick"}]}]}
[debug] [EspressoDriver@a433 (cb9acb48)] Calling AppiumDriver.execute() with args: ["mobile: webAtoms",[{"webviewElement":"1185cec4-7750-45b6-a67f-1f882f17d718","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"CLASS_NAME","value":"safety-centre__group-header"}}},{"name":"perform","atom":"webClick"}]}],"cb9acb48-ccfb-4b17-82de-a7b8d4303c35"]
[EspressoDriver@a433 (cb9acb48)] Executing native command 'mobile: webAtoms'
[debug] [EspressoDriver@a433 (cb9acb48)] Proxying [POST /appium/execute_mobile/web_atoms] to [POST http://127.0.0.1:52472/session/96b63585-c431-476e-9c37-555b9ebd4dcb/appium/execute_mobile/web_atoms] with body: {"webviewElement":"1185cec4-7750-45b6-a67f-1f882f17d718","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"CLASS_NAME","value":"safety-centre__group-header"}}},{"name":"perform","atom":"webClick"}]}
[debug] [EspressoDriver@a433 (cb9acb48)] Got response with status 200: {"id":"634df53f-b539-4f4d-a96c-b97d0f2bfcf7","sessionId":"96b63585-c431-476e-9c37-555b9ebd4dcb","value":"Evaluation: status: 0 value: null hasMessage: false message: null"}
[debug] [EspressoDriver@a433 (cb9acb48)] Responding to client with driver.execute() result: "Evaluation: status: 0 value: null hasMessage: false message: null"
[HTTP] <-- POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/execute/sync 200 118 ms - 77
[debug] [EspressoDriver@a433 (cb9acb48)] Calling AppiumDriver.execute() with args: ["mobile: webAtoms",[{"webviewElement":"ffc9a075-8a03-4719-8b99-5439926c1688","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"CLASS_NAME","value":"safety-centre__group-header"}}},{"name":"perform","atom":"webScrollIntoView"}]}],"cb9acb48-ccfb-4b17-82de-a7b8d4303c35"]
[EspressoDriver@a433 (cb9acb48)] Executing native command 'mobile: webAtoms'
[debug] [EspressoDriver@a433 (cb9acb48)] Proxying [POST /appium/execute_mobile/web_atoms] to [POST http://127.0.0.1:52472/session/96b63585-c431-476e-9c37-555b9ebd4dcb/appium/execute_mobile/web_atoms] with body: {"webviewElement":"ffc9a075-8a03-4719-8b99-5439926c1688","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"CLASS_NAME","value":"safety-centre__group-header"}}},{"name":"perform","atom":"webScrollIntoView"}]}
[debug] [EspressoDriver@a433 (cb9acb48)] Got response with status 200: {"id":"63c4dd45-ad17-444c-a32e-6046d7d544b6","sessionId":"96b63585-c431-476e-9c37-555b9ebd4dcb","value":"true"}
[debug] [EspressoDriver@a433 (cb9acb48)] Responding to client with driver.execute() result: "true"
[HTTP] <-- POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/execute/sync 200 45896 ms - 16
[HTTP]
[HTTP] --> POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/element
[HTTP] {"using":"xpath","value":"//*[(./@class = 'android.webkit.WebView')]"}
[EspressoDriver@a433 (cb9acb48)] Driver proxy active, passing request on via HTTP proxy
[debug] [EspressoDriver@a433 (cb9acb48)] Matched '/wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/element' to command name 'findElement'
[debug] [EspressoDriver@a433 (cb9acb48)] Proxying [POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/element] to [POST http://127.0.0.1:52472/session/96b63585-c431-476e-9c37-555b9ebd4dcb/element] with body: {"using":"xpath","value":"//*[(./@class = 'android.webkit.WebView')]"}
[debug] [EspressoDriver@a433 (cb9acb48)] Got response with status 200: {"id":"35082487-9a39-49ab-bec8-b0f87a511f15","sessionId":"96b63585-c431-476e-9c37-555b9ebd4dcb","value":{"ELEMENT":"886686d1-2c74-4924-b10e-ee4a5aab97e3"}}
[EspressoDriver@a433 (cb9acb48)] Replacing sessionId 96b63585-c431-476e-9c37-555b9ebd4dcb with cb9acb48-ccfb-4b17-82de-a7b8d4303c35
[HTTP] <-- POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/element 200 98 ms - 232
[HTTP]
[HTTP] --> POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/execute/sync
[HTTP] {"script":"mobile: webAtoms","args":[{"webviewElement":"886686d1-2c74-4924-b10e-ee4a5aab97e3","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"CLASS_NAME","value":"safety-centre__group-header"}}},{"name":"perform","atom":"getText"}]}]}
[debug] [EspressoDriver@a433 (cb9acb48)] Calling AppiumDriver.execute() with args: ["mobile: webAtoms",[{"webviewElement":"886686d1-2c74-4924-b10e-ee4a5aab97e3","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"CLASS_NAME","value":"safety-centre__group-header"}}},{"name":"perform","atom":"getText"}]}],"cb9acb48-ccfb-4b17-82de-a7b8d4303c35"]
[EspressoDriver@a433 (cb9acb48)] Executing native command 'mobile: webAtoms'
[debug] [EspressoDriver@a433 (cb9acb48)] Proxying [POST /appium/execute_mobile/web_atoms] to [POST http://127.0.0.1:52472/session/96b63585-c431-476e-9c37-555b9ebd4dcb/appium/execute_mobile/web_atoms] with body: {"webviewElement":"886686d1-2c74-4924-b10e-ee4a5aab97e3","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"CLASS_NAME","value":"safety-centre__group-header"}}},{"name":"perform","atom":"getText"}]}
[debug] [EspressoDriver@a433 (cb9acb48)] Got response with status 200: {"id":"c2597ee7-6cb2-4bbf-aad5-6b4ba777b77e","sessionId":"96b63585-c431-476e-9c37-555b9ebd4dcb","value":"Welcome, Alex 👋\nCheck out our guides for helpful safety advice while you date"}
[debug] [EspressoDriver@a433 (cb9acb48)] Responding to client with driver.execute() result: "Welcome, Alex 👋\nCheck out our guides for helpful safety advice while you date"
[HTTP] <-- POST /wd/hub/session/cb9acb48-ccfb-4b17-82de-a7b8d4303c35/execute/sync 200 3353 ms - 93
[HTTP]



return null
// param size check is for the case when we want to check element exists but don't have any action to perform
return if (params.methodChain.size == 1) "success" else webViewInteraction.get()
Copy link
Contributor

@mykola-mokhnach mykola-mokhnach Oct 29, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[debug] [EspressoDriver@7732 (d0303a0b)] Proxying [POST /appium/execute_mobile/web_atoms] to [POST http://127.0.0.1:58945/session/f55230ec-2f73-44dc-a17c-8a12a999146a/appium/execute_mobile/web_atoms] with body: {"webviewElement":"cd114239-cbe6-43c1-bbde-2376269c0336","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@Data-QA='safety-centre-item']"}}}]}

[debug] [EspressoDriver@7732 (d0303a0b)] java.lang.IllegalStateException: Perform or Check never called on this WebInteraction!

I am still not quite convinced on this one. Why it is not possible to call isDisplayed atom to verify existence of the found element?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No such method isDisplayed in DriverAtom

[HTTP] --> POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/element
[HTTP] {"using":"xpath","value":"//*[(./@class = 'android.webkit.WebView')]"}
[EspressoDriver@9c32 (4f5644ec)] Driver proxy active, passing request on via HTTP proxy
[debug] [EspressoDriver@9c32 (4f5644ec)] Matched '/wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/element' to command name 'findElement'
[debug] [EspressoDriver@9c32 (4f5644ec)] Proxying [POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/element] to [POST http://127.0.0.1:62016/session/9d001ba8-192b-4a19-8095-fed953da7fc6/element] with body: {"using":"xpath","value":"//*[(./@class = 'android.webkit.WebView')]"}
[debug] [EspressoDriver@9c32 (4f5644ec)] Got response with status 200: {"id":"f973f813-accd-4cb1-bff1-8851faf333c6","sessionId":"9d001ba8-192b-4a19-8095-fed953da7fc6","value":{"ELEMENT":"a8d32be7-7182-4370-ac89-494e66eab4aa"}}
[EspressoDriver@9c32 (4f5644ec)] Replacing sessionId 9d001ba8-192b-4a19-8095-fed953da7fc6 with 4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7
[HTTP] <-- POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/element 200 44 ms - 232
[HTTP]
[HTTP] --> POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/execute/sync
[HTTP] {"script":"mobile: webAtoms","args":[{"webviewElement":"a8d32be7-7182-4370-ac89-494e66eab4aa","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"isDisplayed"}]}]}
[debug] [EspressoDriver@9c32 (4f5644ec)] Calling AppiumDriver.execute() with args: ["mobile: webAtoms",[{"webviewElement":"a8d32be7-7182-4370-ac89-494e66eab4aa","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"isDisplayed"}]}],"4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7"]
[EspressoDriver@9c32 (4f5644ec)] Executing native command 'mobile: webAtoms'
[debug] [EspressoDriver@9c32 (4f5644ec)] Proxying [POST /appium/execute_mobile/web_atoms] to [POST http://127.0.0.1:62016/session/9d001ba8-192b-4a19-8095-fed953da7fc6/appium/execute_mobile/web_atoms] with body: {"webviewElement":"a8d32be7-7182-4370-ac89-494e66eab4aa","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"isDisplayed"}]}
[EspressoDriver@9c32 (4f5644ec)] Got response with status 500: {"id":"026636b8-cc3a-44bb-9e47-d2cc9751b057","sessionId":"9d001ba8-192b-4a19-8095-fed953da7fc6","value":{"error":"unknown error","message":"java.lang.NoSuchMethodException: No such method: isDisplayed() on class: androidx.test.espresso.web.webdriver.DriverAtoms","stacktrace":"java.lang.NoSuchMethodException: No such method: isDisplayed() on class: androidx.test.espresso.web.webdriver.DriverAtoms\n\tat io.appium.espressoserver.lib.helpers.reflection.MethodUtils.invokeStaticMethod(MethodUtils.java:57)\n\tat io.appium.espressoserver.lib.helpers.ReflectionUtils.invokeStaticMethod(ReflectionUtils.kt:39)\n\tat io.appium.espressoserver.lib.handlers.WebAtoms.handleInternal(WebAtoms.kt:55)\n\tat io.appium.espressoserver.lib.handlers.WebAtoms.handleInternal(WebAtoms.kt:32)\n\tat io.appium.espressoserver.lib.handlers.RequestHandler$DefaultImpls.handle(RequestHandler.kt:57)\n\tat io.appium.espressoserver.lib.handlers.WebAtoms.handle(WebAtoms.kt:32)\n\tat io.appium.espressoserver.lib.http.Router.route(Router.kt:231)\n\...
[debug] [W3C] Matched W3C error code 'unknown error' to UnknownError
[debug] [EspressoDriver@9c32 (4f5644ec)] Encountered internal error running command: An unknown server-side error occurred while processing the command. Original error: java.lang.NoSuchMethodException: No such method: isDisplayed() on class: androidx.test.espresso.web.webdriver.DriverAtoms
[debug] [EspressoDriver@9c32 (4f5644ec)] java.lang.NoSuchMethodException: No such method: isDisplayed() on class: androidx.test.espresso.web.webdriver.DriverAtoms
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at io.appium.espressoserver.lib.helpers.reflection.MethodUtils.invokeStaticMethod(MethodUtils.java:57)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at io.appium.espressoserver.lib.helpers.ReflectionUtils.invokeStaticMethod(ReflectionUtils.kt:39)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at io.appium.espressoserver.lib.handlers.WebAtoms.handleInternal(WebAtoms.kt:55)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at io.appium.espressoserver.lib.handlers.WebAtoms.handleInternal(WebAtoms.kt:32)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at io.appium.espressoserver.lib.handlers.RequestHandler$DefaultImpls.handle(RequestHandler.kt:57)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at io.appium.espressoserver.lib.handlers.WebAtoms.handle(WebAtoms.kt:32)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at io.appium.espressoserver.lib.http.Router.route(Router.kt:231)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at io.appium.espressoserver.lib.http.Server.serve(Server.kt:54)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:945)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at fi.iki.elonen.NanoHTTPD$ClientHandler.run(NanoHTTPD.java:192)
[debug] [EspressoDriver@9c32 (4f5644ec)] 	at java.lang.Thread.run(Thread.java:1012)
[debug] [EspressoDriver@9c32 (4f5644ec)]
[HTTP] <-- POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/execute/sync 500 83 ms - 1262
[HTTP]

One option I see is to call selectActiveElement. Here's the response of that

[HTTP]
[HTTP] --> POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/execute/sync
[HTTP] {"script":"mobile: webAtoms","args":[{"webviewElement":"ab90db14-932b-44d7-aa19-d66a16adc4e1","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"selectActiveElement"}]}]}
[debug] [EspressoDriver@9c32 (4f5644ec)] Calling AppiumDriver.execute() with args: ["mobile: webAtoms",[{"webviewElement":"ab90db14-932b-44d7-aa19-d66a16adc4e1","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"selectActiveElement"}]}],"4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7"]
[EspressoDriver@9c32 (4f5644ec)] Executing native command 'mobile: webAtoms'
[debug] [EspressoDriver@9c32 (4f5644ec)] Proxying [POST /appium/execute_mobile/web_atoms] to [POST http://127.0.0.1:62016/session/9d001ba8-192b-4a19-8095-fed953da7fc6/appium/execute_mobile/web_atoms] with body: {"webviewElement":"ab90db14-932b-44d7-aa19-d66a16adc4e1","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"selectActiveElement"}]}
[debug] [EspressoDriver@9c32 (4f5644ec)] Got response with status 200: {"id":"908094ab-7ec4-404e-a9e3-b4ea2b54cd6b","sessionId":"9d001ba8-192b-4a19-8095-fed953da7fc6","value":{"opaque":":wdc:1698617571775"}}
[debug] [EspressoDriver@9c32 (4f5644ec)] Responding to client with driver.execute() result: {"opaque":":wdc:1698617571775"}
[HTTP] <-- POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/execute/sync 200 90 ms - 41[HTTP]
[HTTP] --> POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/execute/sync
[HTTP] {"script":"mobile: webAtoms","args":[{"webviewElement":"ab90db14-932b-44d7-aa19-d66a16adc4e1","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"selectActiveElement"}]}]}
[debug] [EspressoDriver@9c32 (4f5644ec)] Calling AppiumDriver.execute() with args: ["mobile: webAtoms",[{"webviewElement":"ab90db14-932b-44d7-aa19-d66a16adc4e1","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"selectActiveElement"}]}],"4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7"]
[EspressoDriver@9c32 (4f5644ec)] Executing native command 'mobile: webAtoms'
[debug] [EspressoDriver@9c32 (4f5644ec)] Proxying [POST /appium/execute_mobile/web_atoms] to [POST http://127.0.0.1:62016/session/9d001ba8-192b-4a19-8095-fed953da7fc6/appium/execute_mobile/web_atoms] with body: {"webviewElement":"ab90db14-932b-44d7-aa19-d66a16adc4e1","forceJavascriptEnabled":true,"methodChain":[{"name":"withElement","atom":{"name":"findElement","locator":{"using":"XPATH","value":"//*[@data-qa='safety-centre-item']"}}},{"name":"perform","atom":"selectActiveElement"}]}
[debug] [EspressoDriver@9c32 (4f5644ec)] Got response with status 200: {"id":"908094ab-7ec4-404e-a9e3-b4ea2b54cd6b","sessionId":"9d001ba8-192b-4a19-8095-fed953da7fc6","value":{"opaque":":wdc:1698617571775"}}
[debug] [EspressoDriver@9c32 (4f5644ec)] Responding to client with driver.execute() result: {"opaque":":wdc:1698617571775"}
[HTTP] <-- POST /wd/hub/session/4f5644ec-ffb6-4ab4-83cf-a4b4af3ffbd7/execute/sync 200 90 ms - 41

How about I document the case in the documentation and code and remove the size check?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about I document the case in the documentation and code and remove the size check?

I feel it would be still a workaround. We could probably improve this extension by adding the support of check method on top of the existing perform one.

Would you be interested in that @pr4bh4sh (of course not as part of this particular PR)?

Also more documentation, especially with good usage examples, would always be super useful.

Copy link
Contributor Author

@pr4bh4sh pr4bh4sh Oct 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, I'll work on implementing check in another PR.

@mykola-mokhnach mykola-mokhnach merged commit 440a6fd into appium:master Oct 30, 2023
11 checks passed
github-actions bot pushed a commit that referenced this pull request Oct 30, 2023
## [2.27.0](v2.26.10...v2.27.0) (2023-10-30)

### Features

* Return web atom response ([#941](#941)) ([440a6fd](440a6fd))
@github-actions
Copy link

🎉 This PR is included in version 2.27.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Webatom return value is always null
2 participants