### Question:
AttributeColumnSynchronizer extends BaseColumnSynchronizer<ColumnMetaData, ColumnMetaData, ColumnMetaData> { @Override public void append(final ColumnMetaData metaData) throws VetoException { if (!handlesAppend(metaData)) { return; } final AttributeCol52 column = (AttributeCol52) metaData.getColumn(); model.getAttributeCols().add(column); synchroniseAppendColumn(column); }  @Override boolean handlesAppend(final MetaData metaData); @Override void append(final ColumnMetaData metaData); @Override boolean handlesUpdate(final MetaData metaData); @Override List<BaseColumnFieldDiff> update(final ColumnMetaData originalMetaData,
                                            final ColumnMetaData editedMetaData); @Override boolean handlesDelete(final MetaData metaData); @Override void delete(final ColumnMetaData metaData); @Override boolean handlesMoveColumnsTo(final List<? extends MetaData> metaData); @Override void moveColumnsTo(final List<MoveColumnToMetaData> metaData);  }### Answer:
@Test public void testAppend() throws VetoException { final AttributeCol52 column = new AttributeCol52(); column.setAttribute(Attribute.SALIENCE.getAttributeName()); modelSynchronizer.appendColumn(column); assertEquals(1, model.getAttributeCols().size()); assertEquals(Attribute.SALIENCE.getAttributeName(), model.getAttributeCols().get(0).getAttribute()); assertEquals(4, uiModel.getColumns().size()); assertTrue(uiModel.getColumns().get(3) instanceof IntegerUiColumn); assertEquals(Attribute.SALIENCE.getAttributeName(), uiModel.getColumns().get(3).getHeaderMetaData().get(0).getTitle()); assertEquals(true, ((BaseSingletonDOMElementUiColumn) uiModel.getColumns().get(3)).isEditable()); }