Я хотел бы проверить имущество одного из пунктов в RecyclerView
. Чтобы быть более конкретным, я хочу проверить, выбран ли этот элемент.Проверьте, выбран ли элемент в списке ресайклеров
Во-первых, я выбираю пункт
onView(withId(R.id.list_master))
.perform(
RecyclerViewActions.actionOnItemAtPosition(14, clickAnItem(R.id.layout_menu))
);
Во-вторых, проверьте, если выбран конкретный пункт:
onView(allOf(withId(R.id.layout_menu), hasDescendant(withText("SO"))))
.check(matches(isSelected()));
С помощью персонализированного согласовани:
private static Matcher<View> isSelected() {
return new TypeSafeMatcher<View>() {
@Override
protected boolean matchesSafely(View item) {
return item.isSelected();
}
@Override
public void describeTo(Description description) {
description.appendText("Selected property");
}
};
К сожалению, состояние этой точки зрения не выбран, но пользовательский интерфейс показывает, что он успешно отмечен как выбранный элемент. Сведения об осуществлении
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
final ViewHolder viewHolder = (ViewHolder) holder;
viewHolder.itemView.setSelected(position == selected);
Спасибо, но мой вопрос касается теста эспрессо. К сожалению, этот ответ не имеет значения – Gleichmut