Commit b2838220 authored by Tatiana Buldina's avatar Tatiana Buldina Committed by Commit Bot

[ChromeDriver] Add implicit_wait to click() method

Bug: chromedriver:2016
Change-Id: I9a5d54fdec6b8750d9893382c927435ad1200ae6
Reviewed-on: https://chromium-review.googlesource.com/1240196Reviewed-by: default avatarJohn Chen <johnchen@chromium.org>
Commit-Queue: Tatiana Buldina <buldina@chromium.org>
Cr-Commit-Position: refs/heads/master@{#593612}
parent 695c43e4
...@@ -433,12 +433,19 @@ Status GetElementClickableLocation( ...@@ -433,12 +433,19 @@ Status GetElementClickableLocation(
return Status(kUnknownError, "no element reference returned by script"); return Status(kUnknownError, "no element reference returned by script");
} }
bool is_displayed = false; bool is_displayed = false;
status = IsElementDisplayed( base::TimeTicks start_time = base::TimeTicks::Now();
while (true) {
Status status = IsElementDisplayed(
session, web_view, target_element_id, true, &is_displayed); session, web_view, target_element_id, true, &is_displayed);
if (status.IsError()) if (status.IsError())
return status; return status;
if (!is_displayed) if (is_displayed)
return Status(kElementNotVisible); break;
if (base::TimeTicks::Now() - start_time >= session->implicit_wait) {
return Status(kElementNotVisible);
}
base::PlatformThread::Sleep(base::TimeDelta::FromMilliseconds(50));
}
WebRect rect; WebRect rect;
status = GetElementRegion(session, web_view, element_id, &rect); status = GetElementRegion(session, web_view, element_id, &rect);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment