DynamicMenuEditorPresenter extends BaseEditor<Plugin, DefaultMetadata> { protected Caller<? extends SupportsSaveAndRename<Plugin, DefaultMetadata>> getSaveAndRenameServiceCaller() { return getPluginServices(); } @Inject  DynamicMenuEditorPresenter(final View baseView); @OnStartup void onStartup(final ObservablePath path,
                          final PlaceRequest place); @WorkbenchPartTitleDecoration IsWidget getTitle(); @WorkbenchPartTitle String getTitleText(); @WorkbenchMenu void getMenus(final Consumer<Menus> menusConsumer); RuleValidator getMenuItemActivityIdValidator(); RuleValidator getMenuItemLabelValidator(final DynamicMenuItem menuItem,
                                                   final DynamicMenuItem editedMenuItem); void addMenuItem(final DynamicMenuItem menuItem); DynamicMenuItem getExistingMenuItem(final DynamicMenuItem currentMenuItem,
                                               final DynamicMenuItem editedMenuItem); void removeObject(DynamicMenuItem object); void updateIndex(final DynamicMenuItem object,
                            final int index,
                            final UpdateIndexOperation operation); void setDataDisplay(final HasData<DynamicMenuItem> display); @WorkbenchPartView UberView<DynamicMenuEditorPresenter> getWidget(); @OnMayClose boolean onMayClose(); DynamicMenu getContent(); @Override Validator getRenameValidator(); @Override Validator getCopyValidator(); View getView();  }
@Test public void testGetSaveAndRenameServiceCaller() { doReturn(pluginServices).when(presenter).getPluginServices(); assertEquals(pluginServices, presenter.getSaveAndRenameServiceCaller()); }