Data implements Iterable<T> { protected final void notifyItemChanged(int position, @Nullable Object payload) { mDataObservable.notifyItemChanged(position, payload); }  @UiThread @NonNull final T get(int position); @UiThread @NonNull abstract T get(int position, int flags); @UiThread abstract int size(); @UiThread int available(); @UiThread final boolean isEmpty(); @UiThread abstract boolean isLoading(); @UiThread abstract void invalidate(); @UiThread abstract void refresh(); @UiThread abstract void reload(); @UiThread void registerDataObserver(@NonNull DataObserver dataObserver); @UiThread void unregisterDataObserver(@NonNull DataObserver dataObserver); @UiThread void registerAvailableObserver(@NonNull AvailableObserver availableObserver); @UiThread void unregisterAvailableObserver(@NonNull AvailableObserver availableObserver); @UiThread void registerLoadingObserver(@NonNull LoadingObserver loadingObserver); @UiThread void unregisterLoadingObserver(@NonNull LoadingObserver loadingObserver); @UiThread void registerErrorObserver(@NonNull ErrorObserver errorObserver); @UiThread void unregisterErrorObserver(@NonNull ErrorObserver errorObserver); @UiThread Iterator<T> iterator(); @SuppressWarnings("unchecked") @CheckResult @NonNull final Data<O> compose(@NonNull Transformer<? super T, ? extends O> transformer); @CheckResult @NonNull final Data<T> filter(@NonNull Predicate<? super T> predicate); @CheckResult @NonNull final Data<O> filter(@NonNull final Class<O> type); @CheckResult @NonNull final Data<T> sort(@NonNull Comparator<? super T> comparator); @CheckResult @NonNull final Data<O> transform(@NonNull Function<? super T, ? extends O> function); @CheckResult @NonNull final Data<T> offset(int offset); @CheckResult @NonNull final Data<T> limit(int limit); @CheckResult @NonNull List<T> asList(); @NonNull static Data<T> fromList(@NonNull Callable<List<? extends T>> loader); @NonNull static Data<T> fromList(@NonNull final Callable<List<? extends T>> loader,
                                       @NonNull ExecutorService executor); @NonNull static Data<T> fromCursor(@NonNull Callable<Cursor> loader,
                                         @NonNull RowMapper<T> rowMapper); @NonNull static Data<T> fromCursor(@NonNull final Callable<Cursor> loader,
                                         @NonNull final RowMapper<T> rowMapper,
                                         @NonNull ExecutorService executor); @NonNull static Data<T> emptyData(); static final int FLAG_PRESENTATION; static final int UNKNOWN; }
@Test public void notifyItemChanged() { DataObserver dataObserver = setUpDataObserver(); mData.notifyItemChanged(4, null); verify(dataObserver).onItemRangeChanged(4, 1, null); verifyNoMoreInteractions(dataObserver); }