Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.

Commit

Permalink
reduce StaleElementException
Browse files Browse the repository at this point in the history
  • Loading branch information
Patrick Huang committed Jun 23, 2014
1 parent af46416 commit 37a7b9a
Showing 1 changed file with 17 additions and 18 deletions.
Expand Up @@ -88,28 +88,27 @@ public ProjectLanguagesTab enterSearchLanguage(String languageQuery) {
* @return new language settings, anticipating the language has been added.
*/
public ProjectLanguagesTab addLanguage(final String localeId) {
waitForTenSec().until(new Function<WebDriver, List<WebElement>>() {
waitForTenSec().until(new Predicate<WebDriver>() {
@Override
public List<WebElement> apply(WebDriver driver) {
return WebElementUtil.getSearchAutocompleteResults(driver,
"settings-languages-form", "languageAutocomplete");
public boolean apply(WebDriver driver) {
List<WebElement> searchResults =
WebElementUtil.getSearchAutocompleteResults(
getDriver(),
"settings-languages-form",
"languageAutocomplete");

boolean clickedLocale = false;
for (WebElement searchResult : searchResults) {
if (searchResult.getText().contains(localeId)) {
searchResult.click();
clickedLocale = true;
break;
}
}
return clickedLocale;
}
});

List<WebElement> searchResults =
WebElementUtil.getSearchAutocompleteResults(getDriver(),
"settings-languages-form", "languageAutocomplete");

boolean clickedLocale = false;
for (WebElement searchResult : searchResults) {
if (searchResult.getText().contains(localeId)) {
searchResult.click();
clickedLocale = true;
break;
}
}
Preconditions.checkState(clickedLocale, "can not find locale - %s",
localeId);

refreshPageUntil(this, new Predicate<WebDriver>() {
@Override
Expand Down

0 comments on commit 37a7b9a

Please sign in to comment.