Hide dismissal swipe background before slice gets ready

Only make swipe background visible once slice has a successfual binding.

Bug: 131843256
Test: robotests
Change-Id: I7866873a217e8ca882634a48108939022713c87b
This commit is contained in:
Yi-Ling Chuang
2019-05-06 19:03:39 +08:00
parent 65a258e2a2
commit ce9903e8db
3 changed files with 31 additions and 1 deletions

View File

@@ -136,6 +136,30 @@ public class SliceContextualCardRendererTest {
assertThat(mRenderer.mFlippedCardSet).contains(viewHolder);
}
@Test
public void bindView_beforeSuccessfulSliceBinding_shouldHideSwipeBackground() {
final RecyclerView.ViewHolder viewHolder = getSliceViewHolder();
final ContextualCard card = buildContextualCard(TEST_SLICE_URI);
final View swipeBg = viewHolder.itemView.findViewById(R.id.dismissal_swipe_background);
mRenderer.bindView(viewHolder, card);
assertThat(swipeBg.getVisibility()).isEqualTo(View.GONE);
}
@Test
public void bindView_reuseViewHolder_shouldHideSwipeBackgroundBeforeSliceBinding() {
final RecyclerView.ViewHolder viewHolder = getSliceViewHolder();
final ContextualCard card = buildContextualCard(TEST_SLICE_URI);
final View swipeBg = viewHolder.itemView.findViewById(R.id.dismissal_swipe_background);
swipeBg.setVisibility(View.VISIBLE);
mRenderer.mSliceLiveDataMap.put(TEST_SLICE_URI, mSliceLiveData);
mRenderer.bindView(viewHolder, card);
assertThat(swipeBg.getVisibility()).isEqualTo(View.GONE);
}
@Test
public void viewClick_keepCard_shouldShowSlice() {
final RecyclerView.ViewHolder viewHolder = getSliceViewHolder();