### Question:
Range implements IOverline { @Override public boolean equals(Object object) { if (!(object instanceof Range)) { return false; } Range range = (Range) object; return range.getLowerBound() == low && range.getUpperBound() == high; } Range(Integer low, Integer high);  Range(Integer low, Integer high, boolean variable); boolean contains(int value); boolean contains(Range range); @Override boolean equals(Object object); @Override int hashCode(); @Override int getLowerBound(); int getUpperBound(); int getWidth(); @Override String toString(); void setLowerBound(int value); void setUpperBoundBound(int value); @Override int getNearestValue(int value);  }### Answer:
@Test public void testEquals() { Assert.assertEquals(new Range(1, 1), new Range(1, 1)); }
@Test public void testEqualsWithNonRange() { Assert.assertTrue(!(new Range(1, 1).equals(new Object()))); }