В настоящее время я пытаюсь выполнить unit recyclerview addonitemclick listner с помощью junit или mockito. вот мой код:Как выполнить единичный тест (с помощью JUnit или mockito) перехват элемента recyclerview
private void mypicadapter(TreeMap<Integer, List<Photos>> photosMap) {
List<PhotoListItem> mItems = new ArrayList<>();
for (Integer albumId : photosMap.keySet()) {
ListHeader header = new ListHeader();
header.setAlbumId(albumId);
mItems.add(header);
for (Photos photo : photosMap.get(albumId)) {
mItems.add(photo);
}
pAdapter = new PhotoViewerListAdapter(MainActivity.this, mItems);
mRecyclerView.setAdapter(pAdapter);
// set 5 photos per row if List item type --> header , else fill row with header.
GridLayoutManager layoutManager = new GridLayoutManager(this, 5);
layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
if (mRecyclerView.getAdapter().getItemViewType(position) == PhotoListItem.HEADER_TYPE)
// return the number of columns so the group header takes a whole row
return 5;
// normal child item takes up 1 cell
return 1;
}
});
mRecyclerView.setLayoutManager(layoutManager);
mRecyclerView.setHasFixedSize(true);
mRecyclerView.addOnItemTouchListener(new PhotoItemClickListener(MainActivity.this,
new PhotoItemClickListener.OnItemClickListener() {
@Override
public void onItemClick(View view, int position) {
if (pAdapter.getItemViewType(position) == PhotoListItem.HEADER_TYPE) return;
Photos photo = pAdapter.getItem(position);
Intent intent = new Intent(MainActivity.this, DetailViewActivity.class);
intent.putExtra(PHOTO_DETAILS, photo);
ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(
MainActivity.this,
new Pair<>(view.findViewById(R.id.photoItem),
getString(R.string.transition_name_photo))
);
ActivityCompat.startActivity(MainActivity.this, intent, options.toBundle());
}
}));
}
Есть ли способ я могу проверить блок: addOnItemTouchListener или OnItemClickListener/onitemclick, издеваться функциональность и т.д. Я довольно новыми для модульного тестирования и смотрел он-лайн на пару учебников и довольно смущенный. Любое пошаговое руководство по тестированию функций или любые предложения помогло бы. Кроме того, были бы полезны любые другие возможные тестируемые сценарии в этой функции. Благодаря!
Определенно, я не помогаю вам, но я думаю, что вы хотите сделать, это не единичный тест, а тест UI, где вы можете использовать [Espresso] (https://developer.android.com/training/testing/ui- testing/espresso-testing.html) – mt0s
@JusticeBauer попробуйте прочитать все комментарии с положительным умом. Трудно угадать отношение кого-то из нескольких слов, а неверное толкование намерения легко. – njzk2
@Justice Bauer см. Эту ссылку http: // stackoverflow.com/questions/41033279/moving-a-recyclerview-via-touch-or-gesture-признание/41122132 # 41122132 Дайте мне знать ваши взгляды –