assertThat(groupHolder.viewGroup.getChildAt(0), is(childViewHolders.get(0).itemView)); assertThat(groupHolder.viewGroup.getChildAt(1), is(childViewHolders.get(1).itemView)); verifyAll();
@Test public void unbindViewHolder_shouldClearViewHolder_whenProcessingExistingViewHolder() { // GIVEN List<AdapterViewTypeDelegate> delegates = singletonList(createValidAdapterViewTypeDelegate(0)); // Delegate already bound to single child item GroupViewHolder groupHolder = createGroupViewHolder(); List<ViewItem> viewItems = singletonList(createViewItem(new ChildModel(0, ""), 0)); List<RecyclerView.ViewHolder> childViewHolders = singletonList(createChildViewHolder("0")); TargetGroupAdapterViewTypeDelegate target = createTargetDelegateWithState(delegates, viewItems, childViewHolders, groupHolder); // EXPECT delegates.get(0).unbindViewHolder(childViewHolders.get(0)); replayAll(); // WHEN target.unbindViewHolder(groupHolder); // THEN assertThat(groupHolder.viewGroup.getChildCount(), is(0)); verifyAll(); }
assertThat(groupHolder.viewGroup.getChildAt(2), is(childViewHolders.get(2).itemView)); assertThat(groupHolder.viewGroup.getChildAt(3), is(childViewHolders.get(3).itemView)); verifyAll();
assertThat(groupHolder.viewGroup.getChildAt(2), is(childViewHolders.get(2).itemView)); assertThat(groupHolder.viewGroup.getChildAt(3), is(childViewHolders.get(3).itemView)); verifyAll();
assertThat(groupHolder.viewGroup.getChildAt(2), is(childViewHolders.get(2).itemView)); assertThat(groupHolder.viewGroup.getChildAt(3), is(childViewHolders.get(3).itemView)); verifyAll();
assertThat(groupHolder.viewGroup.getChildAt(3), is(newChildViewHolders.get(3).itemView)); assertThat(groupHolder.viewGroup.getChildAt(4), is(newChildViewHolders.get(4).itemView)); verifyAll();
@Test public void constructor_shouldAssignIncrementingViewTypes_whenGivenMultipleDelegates() { // GIVEN List<AdapterViewTypeDelegate> delegates = asList( createValidAdapterViewTypeDelegate(0), createValidAdapterViewTypeDelegate(1), createValidAdapterViewTypeDelegate(2) ); replayAll(); // WHEN new TargetGroupAdapterViewTypeDelegate(delegates); // THEN verifyAll(); }
@Test public void unbindViewHolder_shouldDoNothing_whenProcessingAFreshViewHolder() { // GIVEN List<AdapterViewTypeDelegate> delegates = singletonList(createValidAdapterViewTypeDelegate(0)); // Fresh Group ViewHolder GroupViewHolder groupHolder = createGroupViewHolder(); replayAll(); TargetGroupAdapterViewTypeDelegate target = new TargetGroupAdapterViewTypeDelegate(delegates); // WHEN target.unbindViewHolder(groupHolder); // THEN verifyAll(); // no unexpected method invocations }
assertThat(groupHolder.viewGroup.getChildAt(3), is(newChildViewHolders.get(3).itemView)); assertThat(groupHolder.viewGroup.getChildAt(4), is(newChildViewHolders.get(4).itemView)); verifyAll();
assertThat(groupHolder.viewGroup.getChildAt(0), is(newChildViewHolders.get(0).itemView)); assertThat(groupHolder.viewGroup.getChildAt(1), is(newChildViewHolders.get(1).itemView)); verifyAll();
@Test public void createViewHolder_shouldUseImplementationLayoutAndViewGroup_whenGivenValidParent() { // GIVEN List<AdapterViewTypeDelegate> delegates = singletonList(createValidAdapterViewTypeDelegate(0)); ViewGroup expectedParent = createNiceMock(ViewGroup.class); View layout = createNiceMock(View.class); ViewGroup rootViewGroup = createNiceMock(ViewGroup.class); replayAll(); TargetGroupAdapterViewTypeDelegate target = new TargetGroupAdapterViewTypeDelegate(delegates); target.expectedParent = expectedParent; target.layout = layout; target.rootViewGroup = rootViewGroup; // WHEN target.createViewHolder(expectedParent); // THEN verifyAll(); }