所以在我的测试中调用这个方法来布局RecyclerView之后:
我需要在RecyclerView上模拟项目点击。我正在做的是这样的:
recyclerView.addOnItemTouchListener(listener);
recyclerView.measure(0, 0);
recyclerView.layout(0, 0, 100, 10000);
我的 OnItemTouchListener
如下:
listener = new RecyclerOnTouchListener(this, new RecyclerOnTouchListener.OnItemClickListener() {
@Override
public void onItemClick(View v, int position) {
Toast.makeText(this, "Sample toast", Toast.LENGTH_SHORT).show();
}
});
我想要断言:
Assertions.assertThat(ShadowToast.getTextOfLatestToast()).isEqualToIgnoringCase("Sample Toast");
我需要在RecyclerView上模拟项目点击。我正在做的是这样的:
recyclerView.findViewHolderForAdapterPosition(0).itemView.performClick();
recyclerView.performClick()
它们都返回false,意味着没有调用它们中的onclick监听器。
那么我们如何在RecyclerView中真正测试OnItemTouchListener
?在Robolectric中怎么做?
任何帮助将不胜感激。谢谢!