RepositoryPresenter { public void recycle(@NonNull final RecyclerView.ViewHolder holder) {}  abstract int getItemCount(@NonNull T data); long getItemId(@NonNull final T data, final int index); abstract @LayoutRes int getLayoutResId(@NonNull T data, int index); abstract void bind(@NonNull T data, int index, @NonNull RecyclerView.ViewHolder holder); void recycle(@NonNull final RecyclerView.ViewHolder holder); boolean getUpdates(@NonNull final T oldData, @NonNull final T newData,
      @NonNull final ListUpdateCallback listUpdateCallback);  }
@Test public void shouldHaveDefaultRecycleImplementation() throws Exception { final View view = new View(RuntimeEnvironment.application); final RecyclerView.ViewHolder viewHolder = new RecyclerView.ViewHolder(view) {}; new TestRepositoryPresenter().recycle(viewHolder); }