package com.mercandalli.android.apps.files.view; import android.support.annotation.IdRes; import android.support.test.espresso.contrib.RecyclerViewActions; import static android.support.test.espresso.Espresso.onView; import static android.support.test.espresso.action.ViewActions.click; import static android.support.test.espresso.matcher.ViewMatchers.isDescendantOfA; import static android.support.test.espresso.matcher.ViewMatchers.withId; import static org.hamcrest.Matchers.allOf; /** * Static methods for dealing with {@link android.support.v7.widget.RecyclerView}. */ public final class RecyclerViewUtils { /** * Click a {@link android.support.v7.widget.RecyclerView} item. * * @param idRecycler The {@link android.support.v7.widget.RecyclerView} id. * @param position The item position. */ @SuppressWarnings("unused") public static void clickRecyclerAt(@IdRes final int idRecycler, final int position) { onView(withId(idRecycler)).perform( RecyclerViewActions.actionOnItemAtPosition(position, click())); } /** * Click a {@link android.support.v7.widget.RecyclerView} item. * * @param idRecycler The {@link android.support.v7.widget.RecyclerView} id. * @param idParent The {@link android.support.v7.widget.RecyclerView} parent id. * @param position The item position. */ @SuppressWarnings("unused") public static void clickRecyclerAt(@IdRes final int idRecycler, @IdRes final int idParent, final int position) { onView(allOf(withId(idRecycler), isDescendantOfA(withId(idParent)))).perform( RecyclerViewActions.actionOnItemAtPosition(position, click())); } }