### Question:
PieSectionEntity extends DataItemEntity implements Serializable { @Override public boolean equals(Object obj) { if (obj == this) { return true; } if (!(obj instanceof PieSectionEntity)) { return false; } PieSectionEntity that = (PieSectionEntity) obj; if (!ObjectUtils.equal(this.dataset, that.dataset)) { return false; } if (this.pieIndex != that.pieIndex) { return false; } if (this.sectionIndex != that.sectionIndex) { return false; } if (!ObjectUtils.equal(this.sectionKey, that.sectionKey)) { return false; } return super.equals(obj); } PieSectionEntity(Shape area, PieDataset dataset,
            int pieIndex, int sectionIndex, Comparable sectionKey,
            String toolTipText, String urlText); PieDataset getDataset(); Dataset getGeneralDataset(); void setDataset(PieDataset dataset); int getPieIndex(); void setPieIndex(int index); int getSectionIndex(); void setSectionIndex(int index); Comparable getSectionKey(); void setSectionKey(Comparable key); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString(); @Override DatasetCursor getItemCursor();  }### Answer:
@Test public void testEquals() { PieSectionEntity e1 = new PieSectionEntity(new Rectangle2D.Double( 1.0, 2.0, 3.0, 4.0), new DefaultPieDataset(), 1, 2, "Key", "ToolTip", "URL"); PieSectionEntity e2 = new PieSectionEntity(new Rectangle2D.Double(1.0, 2.0, 3.0, 4.0), new DefaultPieDataset(), 1, 2, "Key", "ToolTip", "URL"); assertEquals(e1, e2); e1.setArea(new Rectangle2D.Double(4.0, 3.0, 2.0, 1.0)); assertFalse(e1.equals(e2)); e2.setArea(new Rectangle2D.Double(4.0, 3.0, 2.0, 1.0)); assertEquals(e1, e2); e1.setToolTipText("New ToolTip"); assertFalse(e1.equals(e2)); e2.setToolTipText("New ToolTip"); assertEquals(e1, e2); e1.setURLText("New URL"); assertFalse(e1.equals(e2)); e2.setURLText("New URL"); assertEquals(e1, e2); e1.setDataset(null); assertFalse(e1.equals(e2)); e2.setDataset(null); assertEquals(e1, e2); e1.setPieIndex(99); assertFalse(e1.equals(e2)); e2.setPieIndex(99); assertEquals(e1, e2); e1.setSectionIndex(66); assertFalse(e1.equals(e2)); e2.setSectionIndex(66); assertEquals(e1, e2); e1.setSectionKey("ABC"); assertFalse(e1.equals(e2)); e2.setSectionKey("ABC"); assertEquals(e1, e2); }