@Test public void assertGetAllServersBriefInfo() { when(regCenter.getChildrenKeys("/")).thenReturn(Arrays.asList("test_job1", "test_job2")); when(regCenter.getChildrenKeys("/test_job1/servers")).thenReturn(Arrays.asList("ip1", "ip2")); when(regCenter.getChildrenKeys("/test_job2/servers")).thenReturn(Arrays.asList("ip3", "ip4")); when(regCenter.get("/test_job1/servers/ip1/hostName")).thenReturn("host1"); when(regCenter.get("/test_job1/servers/ip2/hostName")).thenReturn("host2"); when(regCenter.get("/test_job2/servers/ip3/hostName")).thenReturn("host3"); when(regCenter.get("/test_job2/servers/ip4/hostName")).thenReturn("host4"); when(regCenter.isExisted("/test_job1/servers/ip1/shutdown")).thenReturn(false); when(regCenter.isExisted("/test_job1/servers/ip1/status")).thenReturn(true); when(regCenter.isExisted("/test_job1/servers/ip2/shutdown")).thenReturn(true); when(regCenter.isExisted("/test_job2/servers/ip3/shutdown")).thenReturn(false); when(regCenter.isExisted("/test_job2/servers/ip3/status")).thenReturn(false); when(regCenter.isExisted("/test_job2/servers/ip4/shutdown")).thenReturn(false); when(regCenter.isExisted("/test_job2/servers/ip4/status")).thenReturn(true); int i = 0; for (ServerBriefInfo each : serverStatisticsAPI.getAllServersBriefInfo()) { i++; assertThat(each.getServerIp(), is("ip" + i)); assertThat(each.getServerHostName(), is("host" + i)); switch (i) { case 1: assertThat(each.getStatus(), is(ServerBriefInfo.ServerBriefStatus.OK)); break; case 2: assertThat(each.getStatus(), is(ServerBriefInfo.ServerBriefStatus.ALL_CRASHED)); break; case 3: assertThat(each.getStatus(), is(ServerBriefInfo.ServerBriefStatus.ALL_CRASHED)); break; case 4: assertThat(each.getStatus(), is(ServerBriefInfo.ServerBriefStatus.OK)); break; default: fail(); } } }