### Question:
ImageTitle extends Title { @Override public boolean equals(Object obj) { if (obj == this) { return true; } if (!(obj instanceof ImageTitle)) { return false; } ImageTitle that = (ImageTitle) obj; if (!ObjectUtilities.equal(this.image, that.image)) { return false; } return super.equals(obj); } ImageTitle(Image image);  ImageTitle(Image image, RectangleEdge position,
                      HorizontalAlignment horizontalAlignment,
                      VerticalAlignment verticalAlignment);  ImageTitle(Image image, int height, int width,
                      RectangleEdge position,
                      HorizontalAlignment horizontalAlignment,
                      VerticalAlignment verticalAlignment,
                      RectangleInsets padding); Image getImage(); void setImage(Image image); @Override Size2D arrange(Graphics2D g2, RectangleConstraint constraint); @Override void draw(Graphics2D g2, Rectangle2D area); @Override Object draw(Graphics2D g2, Rectangle2D area, Object params); @Override boolean equals(Object obj);  }### Answer:
@Test public void testEquals() { ImageTitle t1 = new ImageTitle(getTestImage()); ImageTitle t2 = new ImageTitle(getTestImage()); assertEquals(t1, t2); t1.setImage(new BufferedImage(2, 1, BufferedImage.TYPE_INT_RGB)); assertFalse(t1.equals(t2)); t2.setImage(new BufferedImage(2, 1, BufferedImage.TYPE_INT_RGB)); assertFalse(t1.equals(t2)); }