this.newTemplatePresenter.addContentChangeHandler( changePages ); this.newContainerFormPresenter.addContentChangeHandler( changePages );
@Test public void testAddContentChangeHandler() { doAnswer( new Answer() { @Override public Object answer( InvocationOnMock invocation ) throws Throwable { final ContentChangeHandler handler = (ContentChangeHandler) invocation.getArguments()[ 0 ]; if ( handler != null ) { handler.onContentChange(); } return null; } } ).when( view ).addContentChangeHandler( any( ContentChangeHandler.class ) ); presenter.addContentChangeHandler( mock( ContentChangeHandler.class ) ); final ArgumentCaptor<WizardPageStatusChangeEvent> eventCaptor = ArgumentCaptor.forClass( WizardPageStatusChangeEvent.class ); verify( wizardPageStatusChangeEvent ).fire( eventCaptor.capture() ); assertEquals( presenter, eventCaptor.getValue().getPage() ); }
@Before public void setup() throws IllegalAccessException, NoSuchFieldException { specManagementServiceCaller = new CallerMock<SpecManagementService>( specManagementService ); when( newTemplatePresenter.getView() ).thenReturn( newTemplatePresenterView ); final Answer addContentChangeHandler = new Answer() { @Override public Object answer( InvocationOnMock invocation ) throws Throwable { final ContentChangeHandler handler = (ContentChangeHandler) invocation.getArguments()[ 0 ]; contentChangeHandlers.add( handler ); return null; } }; doAnswer( addContentChangeHandler ).when( newTemplatePresenter ).addContentChangeHandler( any( ContentChangeHandler.class ) ); doAnswer( addContentChangeHandler ).when( newContainerFormPresenter ).addContentChangeHandler( any( ContentChangeHandler.class ) ); newServerTemplateWizard = new NewServerTemplateWizard( newTemplatePresenter, newContainerFormPresenter, processConfigPagePresenter, specManagementServiceCaller, notification, serverTemplateListRefreshEvent ); final Field field = AbstractWizard.class.getDeclaredField( "view" ); field.setAccessible( true ); field.set( newServerTemplateWizard, view ); newServerTemplateWizard = spy( newServerTemplateWizard ); }