### Question:
ColumnCombination implements Serializable, Comparable<Object> { @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((columnIdentifiers == null) ? 0 : columnIdentifiers .hashCode()); return result; } ColumnCombination();  ColumnCombination(ColumnIdentifier... columnIdentifier); Set<ColumnIdentifier> getColumnIdentifiers(); void setColumnIdentifiers(Set<ColumnIdentifier> identifiers); @Override String toString(); String toString(Map<String, String> tableMapping, Map<String, String> columnMapping); static ColumnCombination fromString(Map<String, String> tableMapping, Map<String, String> columnMapping, String str); @Override int hashCode(); @Override int compareTo(Object o); @Override boolean equals(Object obj); static final String COLUMN_CONNECTOR; }### Answer:
@Test public void testEqualsHashCode() { ColumnIdentifier column11 = new ColumnIdentifier("table1", "column1"); ColumnIdentifier column12 = new ColumnIdentifier("table2", "column2"); ColumnIdentifier column13 = new ColumnIdentifier("table3", "column3"); ColumnCombination expectedColumnCombination1 = new ColumnCombination(column12, column13, column11); ColumnIdentifier column21 = new ColumnIdentifier("table1", "column1"); ColumnIdentifier column22 = new ColumnIdentifier("table2", "column2"); ColumnIdentifier column23 = new ColumnIdentifier("table3", "column3"); ColumnCombination expectedColumnCombination2 = new ColumnCombination(column21, column22, column23); ColumnCombination expectedColumnCombinationNotEquals = new ColumnCombination(column21, column23); assertEquals(expectedColumnCombination1, expectedColumnCombination1); assertEquals(expectedColumnCombination1.hashCode(), expectedColumnCombination1.hashCode()); assertNotSame(expectedColumnCombination1, expectedColumnCombination2); assertEquals(expectedColumnCombination1, expectedColumnCombination2); assertEquals(expectedColumnCombination1.hashCode(), expectedColumnCombination2.hashCode()); assertNotEquals(expectedColumnCombination1, expectedColumnCombinationNotEquals); assertNotEquals(expectedColumnCombination1.hashCode(), expectedColumnCombinationNotEquals.hashCode()); }