FileUploadEditor implements IsWidget, LeafAttributeEditor<String> { @Override public void showErrors(List<EditorError> errors) { StringBuilder sb = new StringBuilder(); for (EditorError error : errors) { if (error.getEditor() == this) { sb.append("\n").append(error.getMessage()); } } boolean hasErrors = sb.length() > 0; if (!hasErrors) { view.clearError(); return; } view.showError(new SafeHtmlBuilder().appendEscaped(sb.substring(1)).toSafeHtml()); } @Inject  FileUploadEditor(final Event<org.dashbuilder.common.client.event.ValueChangeEvent<String>> valueChangeEvent,
                            final Event<NotificationEvent> workbenchNotification,
                            final View view); @PostConstruct void init(); void configure(final String fileUploadName, final FileUploadEditorCallback callback); void addHelpContent(final String title, final String content, final Placement placement); @Override void showErrors(List<EditorError> errors); @Override Widget asWidget(); @Override void setValue(final String value); @Override String getValue(); public View view; }
@Test public void testShowErrors() throws Exception { EditorError e1 = mockEditorError(presenter, "m1"); EditorError e2 = mockEditorError(presenter, "m2"); List<EditorError> errors = new ArrayList<EditorError>(2); errors.add(e1); errors.add(e2); presenter.showErrors(errors); final ArgumentCaptor<SafeHtml> errorSafeHtmlCaptor = ArgumentCaptor.forClass(SafeHtml.class); verify(view, times(1)).showError(errorSafeHtmlCaptor.capture()); verify(view, times(0)).init(presenter); verify(view, times(0)).addHelpContent(anyString(), anyString(), any(Placement.class)); verify(view, times(0)).setFileUploadName(anyString()); verify(view, times(0)).setFileUploadVisible(anyBoolean()); verify(view, times(0)).setFileLabelText(anyString()); verify(view, times(0)).setFileLabelVisible(anyBoolean()); verify(view, times(0)).setLoadingImageVisible(anyBoolean()); verify(view, times(0)).getFileName(); verify(view, times(0)).setFormAction(anyString()); verify(view, times(0)).submit(); verify(view, times(0)).clearError(); }