### Question:
KieMultipleDocumentEditor implements KieMultipleDocumentEditorPresenter<D> { @Override public void onClose() { final List<D> documents = new ArrayList<>(this.documents); documents.stream().forEach(this::deregisterDocument); this.versionRecordManager.clear(); this.activeDocument = null; } KieMultipleDocumentEditor();  KieMultipleDocumentEditor(final KieEditorView editorView); @Override void registerDocument(final D document); @Override void deregisterDocument(final D document); @Override void activateDocument(final D document,
                                 final Overview overview,
                                 final AsyncPackageDataModelOracle dmo,
                                 final Imports imports,
                                 final boolean isReadOnly); @Override D getActiveDocument(); @Override IsWidget getWidget(); @Override IsWidget getTitleWidget(final D document); @Override void getMenus(final Consumer<Menus> menusConsumer); @Override void onClose(); @Override void onSourceTabSelected(); @Override void updateSource(final String source); @Override void onEditTabSelected(); @Override void onEditTabUnselected(); @Override void onOverviewSelected(); @Override boolean mayClose(final Integer originalHashCode,
                            final Integer currentHashCode); @Override Promise<Void> makeMenuBar();  }### Answer:
@Test public void testOnClose() { final TestDocument document = createTestDocument(); registerDocument(document); editor.onClose(); verify(versionRecordManager, times(1)).clear(); verify(registeredDocumentsMenuBuilder, times(1)).deregisterDocument(eq(document)); verify(document.getCurrentPath(), times(1)).dispose(); assertNull(editor.getActiveDocument()); }