pageObject. Поиск наличия элемента по тексту в List<WebElement> при проверке (assertThat)

Здравствуйте.
Есть DOM:

<div class="foo">XXX</div>
<div class="foo">YYY</div>

по @FindAll(@FindBy(xpath = "//div[@class="foo"]")) получаю список из WebElement.
Необходимо проверить наличие на странице элемента с нужным текстом (например “YYY”).

Т.к. таких проверок много, хотелось бы избежать лишних преобразований массива и обойтись одним assertThat на проверку.

На данный момент не понимаю, как проверить в списке вебэлементов наличие какого-либо с нужным текстом .

Изначально пытался обойтись конструкцией:

@FindAll(@FindBy(xpath = "//div[@class="foo"]/text()"))
 public static List<WebElement> elements;

assertThat(elements, contains("YYY");

но массив в итоге пустой и вообще, похоже, с text() так не получится.

Может кто из более опытных коллег знает правильную конструкцию матчера для этого?
Натыкался на что-то связанное с hasProperty, но пока не осознал, как правильно с ним работать.

Ну если не хочется заморачиваться с перебором элементов в коллекции, то постройте xpath который точно найдет нужны вам элемент
что-то вроде такого: //div[contains(@class,'foo') and contains(text(), 'YYY')]

@FindAll(@FindBy(xpath = "//div[@class='foo']"))
 public List<WebElement> elements;
import static org.hamcrest.Matchers.hasItem;
import static ru.yandex.qatools.htmlelements.matchers.WebElementMatchers.hasText;

// ...

assertThat("В списке элементов есть элемент 'YYY'", elements, hasItem(hasText("YYY")));
2 лайка

искомый текст зависит от контекста, а FindBy не принимает параметров.
так что такой способ не подойдет.

import static ru.yandex.qatools.htmlelements.matchers.WebElementMatchers.hasText;

То что нужно. Не смотрел в сторону наработок Яндекса. Думал обычными средствами уже решено.
Спасибо!