StormStatusServiceImpl implements StormStatusService { @Override public List<TopologyStatus> getAllTopologyStatus() { List<TopologyStatus> topologyStatus = new ArrayList<>(); for (TopologyStatus topology : getTopologySummary().getTopologies()) { topologyStatus.add(restTemplate .getForObject(getStormUiProperty() + TOPOLOGY_URL + "/" + topology.getId(), TopologyStatus.class)); } return topologyStatus; } @Autowired  StormStatusServiceImpl(Environment environment, RestTemplate restTemplate, SensorParserGroupService sensorParserGroupService); @Override SupervisorSummary getSupervisorSummary(); @Override TopologySummary getTopologySummary(); @Override TopologyStatus getTopologyStatus(String name); @Override List<TopologyStatus> getAllTopologyStatus(); @Override TopologyResponse activateTopology(String name); @Override TopologyResponse deactivateTopology(String name);  }
@Test public void getAllTopologyStatusShouldReturnAllTopologyStatus() throws Exception { final TopologyStatus topologyStatus = new TopologyStatus(); topologyStatus.setStatus(TopologyStatusCode.STARTED); topologyStatus.setName("bro"); topologyStatus.setId("bro_id"); final TopologySummary topologySummary = new TopologySummary(); topologySummary.setTopologies(new TopologyStatus[]{topologyStatus}); when(environment.getProperty(STORM_UI_SPRING_PROPERTY)).thenReturn(HTTP_STORM_UI); when(restTemplate.getForObject(HTTP_STORM_UI + TOPOLOGY_SUMMARY_URL, TopologySummary.class)).thenReturn(topologySummary); when(restTemplate.getForObject(HTTP_STORM_UI + TOPOLOGY_URL + "/bro_id", TopologyStatus.class)).thenReturn(topologyStatus); TopologyStatus expected = new TopologyStatus(); expected.setStatus(TopologyStatusCode.STARTED); expected.setName("bro"); expected.setId("bro_id"); assertEquals(new ArrayList() {{ add(expected); }}, stormStatusService.getAllTopologyStatus()); }