Есть ли возможность:
- отключить все анимации для представления переработчика или запустить их в потоке пользовательского интерфейса для тестирования с помощью эспрессо?
Или
- чтобы добавить ресурсы холостого хода в android.support.v7.recyclerview.extensions.ListAdapter?
Проблема заключается в следующем:исключение для теста эспрессоXXX: id / items_rcv '.
При попытке выполнить следующий код:
//... code that executes recyclerView.adapter.submitList(items)
onView(withId(R.id.items_rcv))
.perform(RecyclerViewActions.actionOnItemAtPosition<ViewHolder>(
0, click()
));
Проблема заключается в том, что элементы не отображаются при выполнении действия щелчка.Они показываются с некоторой задержкой, потому что адаптер для RecyclerView расширен с android.support.v7.recyclerview.extensions.ListAdapter :
class ItemsAdapter : ListAdapter<Item, RecyclerView.ViewHolder>() {
...
}
, поэтому он использует AsyncListDiffer, который показывает элементы в рециркуляторепросмотр с некоторой анимацией.
Заранее спасибо
ОБНОВЛЕНИЕ:
Следующее не помогает: 1) установить BackgroundThreadExecutor в качестве MainThreadExecutor для AsyncListDiffer
ItemsAdapter(AsyncDifferConfig.Builder<Item>(ItemsDiffCallback)
.setBackgroundThreadExecutor(MainThreadExecutor())
.build())
2) отключить itemAnimator для RecyclerView
mActivityTestRule.activity.findViewById<RecyclerView>(R.id.items_rcv).itemAnimator = null