### Question:
VectorClock implements IVersion, Serializable, Cloneable { @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + (int) (timestamp ^ (timestamp >>> 32)); result = prime * result + ((versions == null) ? 0 : versions.hashCode()); return result; } VectorClock();  VectorClock(long timestamp); @JsonCreator  VectorClock(@JsonProperty("entries") List<ClockEntry> versions, 
                       @JsonProperty("timestamp") long timestamp); VectorClock incremented(int nodeId, long time); @Override VectorClock clone(); @Override int hashCode(); @Override boolean equals(Object obj); @Override String toString(); @JsonIgnore long getMaxVersion(); VectorClock merge(VectorClock clock); @Override Occurred compare(IVersion v); static Occurred compare(VectorClock v1, VectorClock v2); long getTimestamp(); List<ClockEntry> getEntries();  }### Answer:
@Test public void testEqualsAndHashcode() { long now = 5555555555L; VectorClock one = getClockT(now, 1, 2); VectorClock other = getClockT(now, 1, 2); assertEquals(one, other); assertEquals(one.hashCode(), other.hashCode()); }