protected void notifyOnConnect(ServerInstance serverInstance) { notificationService.notify(new ServerInstanceUpdated(serverInstance)); notificationService.notify(new ServerInstanceConnected(serverInstance)); }
@Test public void testOnInstanceUpdateWithoutSelect() { final ServerInstance serverInstance = new ServerInstance( "templateId", "serverName", "serverInstanceId", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); presenter.onInstanceUpdate( new ServerInstanceUpdated( serverInstance ) ); verify( view, never() ).clear(); verify( view, never() ).setServerName( anyString() ); verify( view, never() ).setServerURL( anyString() ); verify( view, never() ).setEmptyView( any(RemoteEmptyView.class) ); } }
@Test public void testOnServerInstanceUpdatedWithoutCurrentServer() { final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateId", "ServerTemplateName" ); final ServerInstance serverInstance = new ServerInstance( serverTemplate.getId(), "serverName", "serverInstanceId", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); verify(view, never()).addServerInstance( anyString(), anyString(), anyString(), any(Command.class)); }
@Test public void testServerInstanceUpdated() { handler.accept(new ServerInstanceUpdated(new ServerInstance())); verify(eventHandler).onServerInstanceUpdated(any()); verifyNoMoreInteractions(eventHandler); }
@Test public void testOnInstanceUpdate() { final ServerInstance serverInstance = new ServerInstance( "templateId", "serverName", "serverInstanceId", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); presenter.onSelect( new ServerInstanceSelected( serverInstance ) ); presenter.onInstanceUpdate( new ServerInstanceUpdated( serverInstance ) ); verify( view, times( 2 ) ).clear(); verify( view, times( 2 ) ).setServerName( serverInstance.getServerName() ); verify( view, times( 2 ) ).setServerURL( serverInstance.getUrl() ); verify( view, times( 2 ) ).setEmptyView( remoteEmptyPresenter.getView() ); }
@Override public void afterResponseSent() { ServerTemplate serverTemplate = controller.getTemplateStorage().load(serverInfo.getServerId()); ServerInstanceKey serverInstanceKey = serverTemplate.getServerInstanceKeys().stream() .filter(server -> server.getUrl().equals(serverInfo.getLocation())) .findFirst() .get(); ServerInstance serverInstance = new ServerInstance(); serverInstance.setServerName(serverInstanceKey.getServerName()); serverInstance.setServerTemplateId(serverInstanceKey.getServerTemplateId()); serverInstance.setServerInstanceId(serverInstanceKey.getServerInstanceId()); serverInstance.setUrl(serverInstanceKey.getUrl()); controller.getNotificationService().notify(new ServerInstanceUpdated(serverInstance)); controller.getNotificationService().notify(new ServerInstanceConnected(serverInstance)); }
@Test public void testOnInstanceUpdateDifferentServer() { final ServerInstance serverInstance = new ServerInstance( "templateId", "serverName", "serverInstanceId", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); presenter.onSelect( new ServerInstanceSelected( serverInstance ) ); final ServerInstance serverInstance2 = new ServerInstance( "templateId2", "serverName2", "serverInstanceId2", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); presenter.onInstanceUpdate( new ServerInstanceUpdated( serverInstance2 ) ); verify( view ).clear(); verify( view ).setServerName( serverInstance.getServerName() ); verify( view ).setServerURL( serverInstance.getUrl() ); verify( view ).setEmptyView( remoteEmptyPresenter.getView() ); }
@Test public void testOnServerInstanceUpdated() { final ContainerCardPresenter cardPresenter = mock( ContainerCardPresenter.class ); when( cardPresenter.getView() ).thenReturn( mock( ContainerCardPresenter.View.class ) ); when( presenterProvider.get() ).thenReturn( cardPresenter ); final ServerInstance serverInstance = new ServerInstance( "templateId", "serverName", "serverInstanceId", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); final Container container = new Container( "containerSpecId", "containerName", serverInstance, Collections.<Message>emptyList(), null, null ); container.setStatus( KieContainerStatus.STARTED ); final Container containerToBeRemoved = new Container( "containerToBeRemovedSpecId", "containerToBeRemovedName", serverInstance, Collections.<Message>emptyList(), null, null ); containerToBeRemoved.setStatus( KieContainerStatus.STARTED ); serverInstance.addContainer( container ); presenter.setup( new ContainerSpec(), Arrays.asList( container, containerToBeRemoved ) ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); //One container updated, one removed verify( cardPresenter ).updateContent( serverInstance, container ); verify( cardPresenter ).delete(); final ArgumentCaptor<Container> containerCaptor = ArgumentCaptor.forClass( Container.class ); verify( cardPresenter, times( 2 ) ).setup( eq( container.getServerInstanceKey() ), containerCaptor.capture() ); final List<Container> containers = containerCaptor.getAllValues(); assertEquals( 2, containers.size() ); assertEquals( container, containers.get( 0 ) ); assertEquals( containerToBeRemoved, containers.get( 1 ) ); }
@Test public void testOnServerInstanceUpdatedDuplicatedContainerName() { final ContainerCardPresenter cardPresenter = mock( ContainerCardPresenter.class ); when( cardPresenter.getView() ).thenReturn( mock( ContainerCardPresenter.View.class ) ); when( presenterProvider.get() ).thenReturn( cardPresenter ); final ServerInstance serverInstance = new ServerInstance( "templateId", "serverName", "serverInstanceId", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); final Container container = new Container( "containerSpecId", "containerName", serverInstance, Collections.<Message>emptyList(), null, null ); container.setStatus( KieContainerStatus.STARTED ); final Container container2 = new Container( "containerSpecId2", "containerName", serverInstance, Collections.<Message>emptyList(), null, null ); container2.setStatus( KieContainerStatus.STARTED ); final Container containerToBeRemoved = new Container( "containerToBeRemovedSpecId", "containerToBeRemovedName", serverInstance, Collections.<Message>emptyList(), null, null ); containerToBeRemoved.setStatus( KieContainerStatus.STARTED ); serverInstance.addContainer( container ); serverInstance.addContainer( container2 ); presenter.setup( new ContainerSpec(), Arrays.asList( container, container2, containerToBeRemoved ) ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); //One container updated, one removed verify( cardPresenter ).updateContent( serverInstance, container ); verify( cardPresenter ).updateContent( serverInstance, container2 ); verify( cardPresenter ).delete(); final ArgumentCaptor<Container> containerCaptor = ArgumentCaptor.forClass( Container.class ); verify( cardPresenter, times( 3 ) ).setup( eq( container.getServerInstanceKey() ), containerCaptor.capture() ); final List<Container> containers = containerCaptor.getAllValues(); assertEquals( 3, containers.size() ); assertEquals( container, containers.get( 0 ) ); assertEquals( container2, containers.get( 1 ) ); assertEquals( containerToBeRemoved, containers.get( 2 ) ); }
@Test public void testOnServerInstanceUpdated() { final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateId", "ServerTemplateName" ); presenter.setup( serverTemplate, null ); assertEquals( serverTemplate, presenter.getCurrentServerTemplate() ); final ServerInstance serverInstance = new ServerInstance( serverTemplate.getId(), "serverName", "serverInstanceId", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); verify( view ).addServerInstance( eq( serverInstance.getServerTemplateId() ), eq( serverInstance.getServerInstanceId() ), eq( serverInstance.getServerName() ), any( Command.class ) ); presenter.onServerInstanceDeleted( new ServerInstanceDeleted( serverInstance.getServerInstanceId() ) ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); verify( view, times( 2 ) ).addServerInstance( eq( serverInstance.getServerTemplateId() ), eq( serverInstance.getServerInstanceId() ), eq( serverInstance.getServerName() ), any( Command.class ) ); }
presenter.onServerInstanceUpdated( new ServerInstanceUpdated( newServerInstance ) ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( newServerInstance ) );
@Test public void testServerInstanceUpdated() throws Exception { final ServerInstanceUpdated event = new ServerInstanceUpdated(new ServerInstance()); notificationService.notify(event); verify(endpoint, timeout(TIMEOUT)).sendObject(new KieServerControllerNotification(event)); }
@Parameterized.Parameters(name = "{index}: {0}") public static Collection<Object[]> data() { Collection<Object[]> parameterData = new ArrayList<Object[]>(Arrays.asList(new Object[][]{ {new ServerInstanceConnected(new ServerInstance())}, {new ServerInstanceDisconnected("serverId")}, {new ServerInstanceDeleted("serverId")}, {new ServerInstanceUpdated(new ServerInstance())}, {new ServerTemplateUpdated(new ServerTemplate())}, {new ServerTemplateDeleted("serverTemplateId")}, {new ContainerSpecUpdated(new ServerTemplate(), new ContainerSpec(), new ArrayList<>())} } )); return parameterData; }