### Question:
CopyOnWriteListProjectProperty extends BaseProjectProperty<CopyOnWriteList> { @Override protected boolean returnOriginalValue() { return isOverridden() || !getOriginalValue().isEmpty(); } CopyOnWriteListProjectProperty(ICascadingJob job); @Override CopyOnWriteList getDefaultValue(); @Override CopyOnWriteList getOriginalValue();  }### Answer:
@Test public void testReturnOriginalValue() { assertFalse(property.returnOriginalValue()); property.setOverridden(true); assertTrue(property.returnOriginalValue()); property.setOriginalValue(new CopyOnWriteList(Arrays.asList(new Object())), false); assertTrue(property.returnOriginalValue()); property.setOriginalValue(new CopyOnWriteList(Arrays.asList(new Object())), true); assertTrue(property.returnOriginalValue()); }