### Question:
RemoveDictionaryMatchesTransformer implements Transformer { @Override public OutputColumns getOutputColumns() { final String[] columnNames = new String[2]; final Class<?>[] columnTypes = new Class[2]; columnNames[0] = _column.getName() + " (" + _dictionary.getName() + " removed)"; columnTypes[0] = String.class; columnNames[1] = OUTPUT_COLUMN_REMOVED_MATCHES; switch (_removedMatchesType) { case STRING: columnTypes[1] = String.class; break; case LIST: columnTypes[1] = List.class; break; default: throw new UnsupportedOperationException("Unsupported output type: " + _removedMatchesType); } return new OutputColumns(columnNames, columnTypes); } RemoveDictionaryMatchesTransformer();  RemoveDictionaryMatchesTransformer(final InputColumn<String> column, final Dictionary dictionary,
            final DataCleanerConfiguration configuration); @Override OutputColumns getOutputColumns(); @Initialize void init(); @Close void close(); @Override Object[] transform(final InputRow inputRow); Object[] transform(String value); static final String PROPERTY_DICTIONARY; static final String PROPERTY_COLUMN; static final String OUTPUT_COLUMN_REMOVED_MATCHES; }### Answer:
@Test public void testGetOutputColumns() throws Exception { transformer._removedMatchesType = RemovedMatchesType.STRING; final OutputColumns outputColumns = transformer.getOutputColumns(); assertEquals("OutputColumns[Job title (Title adjectives removed), Removed matches]", outputColumns.toString()); assertEquals(String.class, outputColumns.getColumnType(1)); transformer._removedMatchesType = RemovedMatchesType.LIST; assertEquals("OutputColumns[Job title (Title adjectives removed), Removed matches]", transformer.getOutputColumns().toString()); assertEquals(List.class, transformer.getOutputColumns().getColumnType(1)); }