### Question:
TextRangeImpl implements TextRange { @Override public int hashCode() { return Objects.hash(start, end); } TextRangeImpl(int startLine, int startLineOffset, int endLine, int endLineOffset);  TextRangeImpl(TextPointer start, TextPointer end); @Override TextPointer start(); @Override TextPointer end(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void test_hashCode() { assertThat(new TextRangeImpl(p1, p2).hashCode()).isEqualTo(new TextRangeImpl(p1, p2).hashCode()); assertThat(new TextRangeImpl(p1, p2).hashCode()).isNotEqualTo(new TextRangeImpl(p1, p1).hashCode()); }