### Question:
FieldPropertiesRenderer implements IsWidget { public void onFieldTypeChange(final String typeCode) { fieldCopy = helper.onFieldTypeChange(unwrap(fieldCopy), typeCode); render(); } @Inject  FieldPropertiesRenderer(FieldPropertiesRendererView view,
                                   DynamicFormModelGenerator dynamicFormModelGenerator,
                                   @StaticFormModel DataBindingEditor staticDataBindingEditor,
                                   @DynamicFormModel DataBindingEditor dynamicDataBindingEditor); void render(final FieldPropertiesRendererHelper helper); @SuppressWarnings("unchecked") FieldDefinition doCopy(final FieldDefinition originalField); void onPressOk(); void onClose(); void onFieldTypeChange(final String typeCode); void onFieldBindingChange(final String bindingExpression); FieldPropertiesRendererView getView(); FieldDefinition getCurrentField(); List<String> getCompatibleFieldTypes(); @Override Widget asWidget();  }### Answer:
@Test public void testOnFieldTypeChange() { testRender(); when(helper.onFieldTypeChange(any(), anyString())).thenReturn(lastNameField); renderer.onFieldTypeChange(TYPE_CODE); verify(helper).onFieldTypeChange(renderer.fieldCopy, TYPE_CODE); verify(renderer, atLeastOnce()).render(); }