### Question:
ScriptTypeListFieldEditorPresenter extends FieldEditorPresenter<ScriptTypeListValue> { @Override public void setValue(ScriptTypeListValue value) { super.setValue(value); if (value != null && value.getValues() != null && !value.getValues().isEmpty()) { scriptTypePresenter.setValue(value.getValues().get(0)); } else { scriptTypePresenter.setValue(null); } } @Inject  ScriptTypeListFieldEditorPresenter(final ScriptTypeFieldEditorPresenter scriptTypePresenter); @PostConstruct void init(); IsElement getView(); @Override void setValue(ScriptTypeListValue value); void setMode(ScriptTypeMode mode); @Override void setReadOnly(boolean readOnly);  }### Answer:
@Test public void testSetValueWhenNull() { editor.setValue(null); verify(scriptTypePresenter, times(1)).setValue(null); }
@Test public void testSetValueWhenEmpty() { editor.setValue(new ScriptTypeListValue()); verify(scriptTypePresenter, times(1)).setValue(null); }
@Test public void testSetValueWhenNotEmpty() { ScriptTypeValue value = mock(ScriptTypeValue.class); editor.setValue(new ScriptTypeListValue().addValue(value)); verify(scriptTypePresenter, times(1)).setValue(value); }