### Question:
Arm extends AbstractNamedEntity<Arm> implements TypeWithNotes { @Override public boolean equals(Object obj) { if (obj instanceof Arm) { return super.equals(obj); } return false; } Arm(String name, int size); @Override String toString(); Integer getSize(); void setSize(Integer size); @Override Set<Entity> getDependencies(); @Override Arm clone(); ObservableList<Note> getNotes(); @Override boolean deepEquals(Entity obj); @Override boolean equals(Object obj); Arm rename(String newName); static final String PROPERTY_SIZE; }### Answer:
@Test public void testEquals() { assertEquals(d_arm, new Arm(d_name, 12)); assertEquals(d_arm.hashCode(), new Arm(d_name, 12).hashCode()); JUnitUtil.assertNotEquals(d_arm, new Arm("Group 2", 0)); assertTrue(d_arm.deepEquals(d_arm)); assertFalse(d_arm.deepEquals(new Arm(d_name, 12))); assertTrue(d_arm.deepEquals(new Arm(d_name, 0))); d_arm.getNotes().add(new Note()); assertFalse(d_arm.deepEquals(new Arm(d_name, 0))); }