ColumnFunctionEditor implements IsWidget { public void delete() { deleteEvent.fire(new GroupFunctionDeletedEvent(groupFunction)); } @Inject  ColumnFunctionEditor(View view,
                                ColumnDetailsEditor columnDetailsEditor,
                                Event<GroupFunctionChangedEvent> changeEvent,
                                Event<GroupFunctionDeletedEvent> deleteEvent); @Override Widget asWidget(); GroupFunction getGroupFunction(); ColumnType getTargetType(); ColumnDetailsEditor getColumnDetailsEditor(); void init(DataSetMetadata metadata,
                     GroupFunction groupFunction,
                     ColumnType targetType,
                     String columnTitle,
                     boolean functionsEnabled,
                     boolean canDelete); void delete(); List<AggregateFunctionType> getSupportedFunctionTypes(); List<AggregateFunctionType> getSupportedFunctionTypes(ColumnType columnType);  }
@Test public void testDelete() { GroupFunction groupFunction = new GroupFunction("column1", "column1", AggregateFunctionType.COUNT); presenter.init(metadata, groupFunction, null, "Title", true, true); presenter.delete(); verify(deleteEvent).fire(any(GroupFunctionDeletedEvent.class)); }