DeploymentsMarshallingStrategiesPresenter extends Section<DeploymentDescriptorModel> { @Override public Promise<Void> setup(final DeploymentDescriptorModel model) { if (model.getMarshallingStrategies() == null) { model.setMarshallingStrategies(new ArrayList<>()); } marshallingStrategyPresenters.setup( view.getMarshallingStrategiesTable(), model.getMarshallingStrategies(), (marshallingStrategy, presenter) -> presenter.setup(marshallingStrategy, this)); return promises.resolve(); } @Inject  DeploymentsMarshallingStrategiesPresenter(final Event<SettingsSectionChange<DeploymentDescriptorModel>> settingsSectionChangeEvent,
                                                     final MenuItem<DeploymentDescriptorModel> menuItem,
                                                     final Promises promises,
                                                     final DeploymentsMarshallingStrategiesView view,
                                                     final MarshallingStrategiesListPresenter marshallingStrategyPresenters,
                                                     final ItemObjectModelFactory itemObjectModelFactory); @PostConstruct void init(); @Override Promise<Void> setup(final DeploymentDescriptorModel model); void addNewMarshallingStrategy(); @Override SectionView<?> getView(); @Override int currentHashCode();  }
@Test public void testSetup() { final DeploymentDescriptorModel model = new DeploymentDescriptorModel(); presenter.setup(model); assertNotNull(model.getMarshallingStrategies()); verify(marshallingStrategiesListPresenter).setup(any(), any(), any()); }