RESOLVED FIXED 230614
[WebDriver] Add support for shadow roots
https://bugs.webkit.org/show_bug.cgi?id=230614
Summary [WebDriver] Add support for shadow roots
Carlos Garcia Campos
Reported 2021-09-22 05:35:46 PDT
See https://w3c.github.io/webdriver/#shadow-root, https://w3c.github.io/webdriver/#find-element-from-shadow-root, https://w3c.github.io/webdriver/#find-elements-from-shadow-root and https://w3c.github.io/webdriver/#get-element-shadow-root imported/w3c/webdriver/tests/find_element_from_shadow_root/ imported/w3c/webdriver/tests/find_elements_from_shadow_root/ imported/w3c/webdriver/tests/get_element_shadow_root/
Attachments
Patch (26.44 KB, patch)
2022-02-01 04:25 PST, Carlos Garcia Campos
aperez: review+
Radar WebKit Bug Importer
Comment 1 2021-09-29 05:36:25 PDT
Carlos Garcia Campos
Comment 2 2022-02-01 04:25:02 PST
Adrian Perez
Comment 3 2022-02-04 06:26:09 PST
Comment on attachment 450514 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=450514&action=review > Source/WebDriver/Session.cpp:1139 > + if (isShadowRoot == ElementIsShadowRoot::Yes && result.errorString() == "stale element reference") { Wouldn't it be more robust to compare the error code instead of comparing strings? As in: result.errorCode == CommandResult::ErrorCode::StaleElementReference > Source/WebDriver/WebDriverService.cpp:1461 > } These two functions are so similar... the only variation AFAICS is using FindElementsMode::{Multiple,Single} in the last line; maybe most of the function body could be factored out?
Carlos Garcia Campos
Comment 4 2022-02-07 02:25:26 PST
Note You need to log in before you can comment on or make changes to this bug.