### Question:
KnowledgeBaseItemPresenter extends ListItemPresenter<KBaseModel, KnowledgeBasesPresenter, KnowledgeBaseItemPresenter.View> { public void setDefault(final boolean isDefault) { kBaseModel.setDefault(isDefault); defaultKnowledgeBaseChangeEvent.fire(new DefaultKnowledgeBaseChange(kBaseModel)); parentPresenter.fireChangeEvent(); } @Inject  KnowledgeBaseItemPresenter(final View view,
                                      final Event<DefaultKnowledgeBaseChange> defaultKnowledgeBaseChangeEvent,
                                      final KnowledgeSessionsModal knowledgeSessionsModal,
                                      final IncludedKnowledgeBasesListPresenter includedKnowledgeBasesListPresenter,
                                      final PackageListPresenter packageListPresenter); @Override KnowledgeBaseItemPresenter setup(final KBaseModel kBaseModel,
                                            final KnowledgeBasesPresenter parentPresenter); @Override void remove(); void onNameChange(final String name); void fireChangeEvent(); @Override KBaseModel getObject(); void addNewIncludedKnowledgeBase(); void addPackage(); void showKnowledgeSessionsModal(); void signalAddedOrRemoved(); void setDefault(final boolean isDefault); void onDefaultKnowledgeSessionChanged(@Observes final DefaultKnowledgeBaseChange event);  }### Answer:
@Test public void testSetDefault() { final KBaseModel kBaseModel = new KBaseModel(); kBaseModel.setDefault(false); final KnowledgeBasesPresenter parentPresenter = mock(KnowledgeBasesPresenter.class); knowledgeBaseItemPresenter.kBaseModel = kBaseModel; knowledgeBaseItemPresenter.parentPresenter = parentPresenter; knowledgeBaseItemPresenter.setDefault(true); Assert.assertTrue(kBaseModel.isDefault()); verify(defaultKnowledgeBaseChangeEvent).fire(any()); verify(parentPresenter).fireChangeEvent(); }