### Question:
IMAMeasurementRecord extends ExaminableRecord { @Override public final boolean equals(final Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (!(obj instanceof IMAMeasurementRecord)) { return false; } IMAMeasurementRecord other = (IMAMeasurementRecord) obj; if (other.id == null || id == null) { return super.equals(other); } return other.id.equals(id); } IMAMeasurementRecord(final String path, final Digest hash); protected  IMAMeasurementRecord(); final Long getId(); final String getPath(); final Digest getHash(); final IMAReport getReport(); final void setReport(final IMAReport report); @Override final int hashCode(); @Override final boolean equals(final Object obj); @Override final String toString();  }### Answer:
@Test public final void testEquals() { IMAMeasurementRecord r1 = getDefaultRecord(); IMAMeasurementRecord r2 = getDefaultRecord(); Assert.assertNotEquals(r1, r2); Assert.assertNotEquals(r2, r1); Assert.assertEquals(r1, r1); Assert.assertEquals(r2, r2); }