### Question:
FXForm extends AbstractFXForm { public void setSource(T source) { this.source.set(source); } FXForm();  FXForm(T source);  FXForm(FactoryProvider editorFactoryProvider);  FXForm(T source, FactoryProvider editorFactoryProvider);  FXForm(FactoryProvider labelFactoryProvider, FactoryProvider tooltipFactoryProvider, FactoryProvider editorFactoryProvider);  FXForm(final T source, FactoryProvider labelFactoryProvider, FactoryProvider tooltipFactoryProvider, FactoryProvider editorFactoryProvider); T getSource(); void setSource(T source); ObjectProperty<T> sourceProperty(); ElementProvider getElementProvider(); ObjectProperty<ElementProvider> elementProviderProperty(); void setElementProvider(ElementProvider elementProvider); boolean isValid(); boolean commit(); void reload();  }### Answer:
@Test public void testIssue2() { TestBean testBean = new TestBean(); FXForm fxForm = new FXForm(testBean); Assert.assertEquals(4, fxForm.getElements().size()); fxForm.setSource(null); Assert.assertEquals(0, fxForm.getElements().size()); }
@Test public void testSetSource() { TestBean testBean = new TestBean(); FXForm fxForm = new FXForm(); Assert.assertEquals(0, fxForm.getElements().size()); fxForm.setSource(testBean); Assert.assertEquals(4, fxForm.getElements().size()); }