@SuppressWarnings("unchecked") private void setAdapter(RecyclerView.Adapter adapter) { if (mAdapter != null) { mAdapter.unregisterAdapterDataObserver(mHeaderPositionsObserver); } if (adapter instanceof StickyHeaders) { mAdapter = (T) adapter; mAdapter.registerAdapterDataObserver(mHeaderPositionsObserver); mHeaderPositionsObserver.onChanged(); } else { mAdapter = null; mHeaderPositions.clear(); } }
@Test public void setSelection_changesSelection() { CustomerSource cardSource = CustomerSource.fromString(CardInputTestActivity.EXAMPLE_JSON_CARD_SOURCE); CustomerSource secondCardSource = CustomerSource.fromString(CardInputTestActivity.EXAMPLE_JSON_CARD_SOURCE_SECOND); mMaskedCardAdapter.addCustomerSourceIfSupported(cardSource, secondCardSource); assertEquals(2, mMaskedCardAdapter.getItemCount()); verify(mAdapterDataObserver, times(1)).onChanged(); assertNull(mMaskedCardAdapter.getSelectedSource()); assertNotNull(secondCardSource); assertNotNull(secondCardSource.getId()); mMaskedCardAdapter.setSelectedSource(secondCardSource.getId()); verify(mAdapterDataObserver, times(2)).onChanged(); assertNotNull(mMaskedCardAdapter.getSelectedSource()); assertEquals(secondCardSource.getId(), mMaskedCardAdapter.getSelectedSource().getId()); }
@Test public void addSources_onlyDisplaysCards() { CustomerSource cardSource = CustomerSource.fromString(CardInputTestActivity.EXAMPLE_JSON_CARD_SOURCE); CustomerSource bitcoinSource = CustomerSource.fromString(CardInputTestActivity.EXAMPLE_JSON_SOURCE_BITCOIN); mMaskedCardAdapter.addCustomerSourceIfSupported(cardSource, bitcoinSource); assertEquals(1, mMaskedCardAdapter.getItemCount()); verify(mAdapterDataObserver).onChanged(); }
@Test public void updateCustomer_removesExistingSourcesAndAddsAllCustomerSources() { CustomerSource cardSource = CustomerSource.fromString(CardInputTestActivity.EXAMPLE_JSON_CARD_SOURCE_SECOND); mMaskedCardAdapter.addCustomerSourceIfSupported(cardSource); assertEquals(1, mMaskedCardAdapter.getItemCount()); assertNull(mMaskedCardAdapter.getSelectedSource()); Customer customer = Customer.fromString(PaymentMethodsActivityTest.TEST_CUSTOMER_OBJECT_WITH_SOURCES); assertNotNull(customer); mMaskedCardAdapter.updateCustomer(customer); assertEquals(2, mMaskedCardAdapter.getItemCount()); assertNotNull(mMaskedCardAdapter.getSelectedSource()); assertEquals(customer.getDefaultSource(), mMaskedCardAdapter.getSelectedSource().getId()); verify(mAdapterDataObserver, times(4)).onChanged(); }
@Override public void onChanged() { observer.onChanged(); }
@Override public void onChanged() { super.onChanged(); updateEmptyView(); }
@Override public void onChanged() { super.onChanged(); updateNavigationPreferences(); }
@Override public void onChanged() { super.onChanged(); checkIfEmpty(); } };
@Override public void onChanged() { super.onChanged(); //too general, we just have to completely recreate recreateViews(); reindex(); }
public void setSuggestionsAdapter(RecyclerView.Adapter adapter) { if (mRecyclerView.getAdapter() != null) mRecyclerView.getAdapter().unregisterAdapterDataObserver(mDataObserver); mRecyclerView.setAdapter(adapter); adapter.registerAdapterDataObserver(mDataObserver); mDataObserver.onChanged(); }