### Question:
UnmodifiableHolder extends AbstractValueModel implements ValueHolder<T> { public void setValue(Object newValue) { throw new RuntimeException("Unexpected modification"); } UnmodifiableHolder(T obj); T getValue(); void setValue(Object newValue);  }### Answer:
@Test(expected=Exception.class) public void testSetValue() { new UnmodifiableHolder<String>("").setValue("XXX"); }