@Test public void checkCluster_returns_NodeHealths_returned_by_HealthState() { when(webServer.isStandalone()).thenReturn(false); Set<NodeHealth> nodeHealths = IntStream.range(0, 1 + random.nextInt(4)).mapToObj(i -> randomNodeHealth()).collect(Collectors.toSet()); when(sharedHealthState.readAll()).thenReturn(nodeHealths); HealthCheckerImpl underTest = new HealthCheckerImpl(webServer, new NodeHealthCheck[0], new ClusterHealthCheck[0], sharedHealthState); ClusterHealth clusterHealth = underTest.checkCluster(); assertThat(clusterHealth.getNodes()).isEqualTo(nodeHealths); }
private static System.HealthResponse toResponse(ClusterHealth check) { System.HealthResponse.Builder responseBuilder = System.HealthResponse.newBuilder(); System.Node.Builder nodeBuilder = System.Node.newBuilder(); System.Cause.Builder causeBuilder = System.Cause.newBuilder(); Health health = check.getHealth(); responseBuilder.setHealth(System.Health.valueOf(health.getStatus().name())); health.getCauses().forEach(str -> responseBuilder.addCauses(toCause(str, causeBuilder))); System.Nodes.Builder nodesBuilder = System.Nodes.newBuilder(); check.getNodes().stream() .sorted(NODE_HEALTH_COMPARATOR) .map(node -> toNode(node, nodeBuilder, causeBuilder)) .forEach(nodesBuilder::addNodes); responseBuilder.setNodes(nodesBuilder.build()); return responseBuilder.build(); }
@Test public void verify_getters() { Health health = randomHealth(); Set<NodeHealth> nodeHealths = randomNodeHealths(); ClusterHealth underTest = new ClusterHealth(health, nodeHealths); assertThat(underTest.getHealth()).isSameAs(health); assertThat(underTest.getNodes()).isEqualTo(nodeHealths); }
private static System.HealthResponse toResponse(ClusterHealth check) { System.HealthResponse.Builder responseBuilder = System.HealthResponse.newBuilder(); System.Node.Builder nodeBuilder = System.Node.newBuilder(); System.Cause.Builder causeBuilder = System.Cause.newBuilder(); Health health = check.getHealth(); responseBuilder.setHealth(System.Health.valueOf(health.getStatus().name())); health.getCauses().forEach(str -> responseBuilder.addCauses(toCause(str, causeBuilder))); System.Nodes.Builder nodesBuilder = System.Nodes.newBuilder(); check.getNodes().stream() .sorted(NODE_HEALTH_COMPARATOR) .map(node -> toNode(node, nodeBuilder, causeBuilder)) .forEach(nodesBuilder::addNodes); responseBuilder.setNodes(nodesBuilder.build()); return responseBuilder.build(); }