### Question:
KnowledgeSessionListItemPresenter extends ListItemPresenter<KSessionModel, KnowledgeSessionsModal, KnowledgeSessionListItemPresenter.View> { @Override public KnowledgeSessionListItemPresenter setup(final KSessionModel kSessionModel, final KnowledgeSessionsModal parentPresenter) { this.kSessionModel = kSessionModel; this.parentPresenter = parentPresenter; view.init(this); view.setIsDefault(kSessionModel.isDefault()); view.setName(kSessionModel.getName()); view.setType(kSessionModel.getType()); view.setListenersCount(kSessionModel.getListeners().size()); view.setWorkItemHandlersCount(kSessionModel.getWorkItemHandelerModels().size()); listenersListPresenter.setup( view.getListenersContainer(), kSessionModel.getListeners(), (listener, presenter) -> presenter.setup(listener, this)); workItemHandlersListPresenter.setup( view.getWorkItemHandlersContainer(), kSessionModel.getWorkItemHandelerModels(), (workItemHandler, presenter) -> presenter.setup(workItemHandler, this)); view.setupClockElement(kSessionModel, parentPresenter); view.initListViewCompoundExpandableItems(); return this; } @Inject  KnowledgeSessionListItemPresenter(final View view,
                                             final Event<DefaultKnowledgeSessionChange> defaultKnowledgeSessionChangeEvent,
                                             final WorkItemHandlersListPresenter workItemHandlersListPresenter,
                                             final ListenersListPresenter listenersListPresenter); @Override KnowledgeSessionListItemPresenter setup(final KSessionModel kSessionModel,
                                                   final KnowledgeSessionsModal parentPresenter); @Override void remove(); @Override KSessionModel getObject(); void setName(final String name); void setType(final String type); void addListener(); void addWorkItemHandler(); void fireChangeEvent(); void closeAllExpandableListItems(); void signalWorkItemHandlerAddedOrRemoved(); void signalListenerAddedOrRemoved(); void setDefault(final boolean isDefault); void onDefaultKnowledgeSessionChanged(@Observes final DefaultKnowledgeSessionChange event);  }### Answer:
@Test public void testSetup() { knowledgeSessionListItemPresenter.setup(mock(KSessionModel.class), mock(KnowledgeSessionsModal.class)); verify(view).init(eq(knowledgeSessionListItemPresenter)); verify(view).setIsDefault(anyBoolean()); verify(view).setName(any()); verify(view).setType(any()); verify(view).setListenersCount(anyInt()); verify(view).setWorkItemHandlersCount(anyInt()); verify(view).initListViewCompoundExpandableItems(); verify(listenersListPresenter).setup(any(), any(), any()); verify(workItemHandlersListPresenter).setup(any(), any(), any()); verify(view).setupClockElement(any(), any()); }