public void testUnbind() throws Exception { final MockAbstractBinder binder = new MockAbstractBinder(root, form, handler); binder.bind(); assertNotNull(binder.getBoundField("stringField")); assertNotNull(binder.getBoundAction("someAction")); assertNotNull(binder.getBoundDataProvider("dataProviderField")); binder.unbind(); assertNull(binder.getBoundField("stringField")); assertNull(binder.getBoundAction("someAction")); assertNull(binder.getBoundDataProvider("dataProviderField")); }
public void testDataProvidedListChanged() throws Exception { DataProviderMetadata dataMeta = (DataProviderMetadata) form.getFormMetadata() .getDataProviderMetadatas() .get(new MethodEntry(form.getMethod("someDataProvider"))); MockAbstractBinder binder = new MockAbstractBinder(root, form, handler) { protected void resetSelectedFields(DataProviderMetadata meta) throws Exception { put("resetSelectedFields(DataProviderMetadata)", meta); } }; binder.bind(); MockBoundDataProvider bound = (MockBoundDataProvider) binder.getBoundDataProvider(dataMeta.getWidgetName()); final List list = Collections.singletonList("someValue"); binder.dataProvidedListChanged(dataMeta, list); assertSame(list, bound.get("updateList(List)")); form.getController().setResetOnDataProviderChange(false); binder.clear(); bound.clear(); binder.dataProvidedListChanged(dataMeta, list); assertSame(list, bound.get("updateList(List)")); assertNull(binder.get("resetSelectedFields(DataProviderMetadata)")); }
public void testDataProvidedIndexesChanged() throws Exception { DataProviderMetadata dataMeta = (DataProviderMetadata) form.getFormMetadata() .getDataProviderMetadatas() .get(new MethodEntry(form.getMethod("someDataProvider"))); MockAbstractBinder binder = new MockAbstractBinder(root, form, handler); binder.bind(); MockBoundDataProvider bound = (MockBoundDataProvider) binder.getBoundDataProvider(dataMeta.getWidgetName()); final int[] indexes = new int[] {2, 5, 10}; binder.dataProvidedIndexesChanged(dataMeta, indexes); assertSame(indexes, bound.get("updateIndexes(int[])")); }