@Test public void equals_is_based_on_content() { NodeDetails.Builder builder = testSupport.randomNodeDetailsBuilder(); NodeDetails underTest = builder.build(); assertThat(underTest).isEqualTo(underTest); assertThat(builder.build()) .isEqualTo(underTest) .isNotSameAs(underTest); assertThat(underTest).isNotEqualTo(null); assertThat(underTest).isNotEqualTo(new Object()); }
@Test public void verify_getters() { String name = randomAlphanumeric(3); String host = randomAlphanumeric(10); int port = 1 + random.nextInt(10); long startedAt = 1 + random.nextInt(666); NodeDetails underTest = builderUnderTest .setType(randomType) .setName(name) .setHost(host) .setPort(port) .setStartedAt(startedAt) .build(); assertThat(underTest.getType()).isEqualTo(randomType); assertThat(underTest.getName()).isEqualTo(name); assertThat(underTest.getHost()).isEqualTo(host); assertThat(underTest.getPort()).isEqualTo(port); assertThat(underTest.getStartedAt()).isEqualTo(startedAt); } }
private NodeHealth randomNodeHealth() { NodeHealth.Builder builder = newNodeHealthBuilder() .setStatus(NodeHealth.Status.values()[random.nextInt(NodeHealth.Status.values().length)]); IntStream.range(0, random.nextInt(4)).mapToObj(i -> randomAlphabetic(5)).forEach(builder::addCause); return builder.setDetails( newNodeDetailsBuilder() .setType(random.nextBoolean() ? NodeDetails.Type.APPLICATION : NodeDetails.Type.SEARCH) .setName(randomAlphanumeric(3)) .setHost(randomAlphanumeric(4)) .setPort(1 + random.nextInt(3)) .setStartedAt(1 + random.nextInt(23)) .build()) .build(); }
.setPort(999) .setStartedAt(time) .build()) .build(), newNodeHealthBuilder() .setPort(999) .setStartedAt(time) .build()) .build(), newNodeHealthBuilder() .setPort(999) .setStartedAt(time) .build()) .build(), newNodeHealthBuilder() .setPort(999) .setStartedAt(time) .build()) .build(), newNodeHealthBuilder() .setPort(999) .setStartedAt(time) .build()) .build())));
@Test public void verify_toString() { String name = randomAlphanumeric(3); String host = randomAlphanumeric(10); int port = 1 + random.nextInt(10); long startedAt = 1 + random.nextInt(666); NodeDetails underTest = builderUnderTest .setType(randomType) .setName(name) .setHost(host) .setPort(port) .setStartedAt(startedAt) .build(); assertThat(underTest.toString()) .isEqualTo("NodeDetails{type=" + randomType + ", name='" + name + "', host='" + host + "', port=" + port + ", startedAt=" + startedAt + "}"); }
private NodeHealth randomNodeHealth(NodeDetails.Type type, String name, String host, int port, long started) { NodeHealth.Builder builder = newNodeHealthBuilder() .setStatus(NodeHealth.Status.values()[random.nextInt(NodeHealth.Status.values().length)]); IntStream.range(0, random.nextInt(4)).mapToObj(i -> randomAlphabetic(5)).forEach(builder::addCause); return builder.setDetails( newNodeDetailsBuilder() .setType(type) .setName(name) .setHost(host) .setPort(port) .setStartedAt(started) .build()) .build(); }
private NodeHealth randomNodeHealth() { return newNodeHealthBuilder() .setStatus(NodeHealth.Status.values()[random.nextInt(NodeHealth.Status.values().length)]) .setDetails(newNodeDetailsBuilder() .setType(random.nextBoolean() ? NodeDetails.Type.SEARCH : NodeDetails.Type.APPLICATION) .setName(randomAlphanumeric(30)) .setHost(randomAlphanumeric(10)) .setPort(1 + random.nextInt(666)) .setStartedAt(1 + random.nextInt(852)) .build()) .build(); } }
private NodeHealth randomNodeHealth() { return newNodeHealthBuilder() .setStatus(NodeHealth.Status.values()[random.nextInt(NodeHealth.Status.values().length)]) .setDetails( NodeDetails.newNodeDetailsBuilder() .setType(random.nextBoolean() ? NodeDetails.Type.SEARCH : NodeDetails.Type.APPLICATION) .setName(randomAlphanumeric(3)) .setHost(randomAlphanumeric(4)) .setPort(1 + random.nextInt(344)) .setStartedAt(1 + random.nextInt(999)) .build()) .build(); }
private NodeHealth newNodeHealth(NodeHealth.Status status) { return NodeHealth.newNodeHealthBuilder() .setStatus(status) .setDetails(NodeDetails.newNodeDetailsBuilder() .setType(random.nextBoolean() ? NodeDetails.Type.APPLICATION : NodeDetails.Type.SEARCH) .setName(randomAlphanumeric(23)) .setHost(randomAlphanumeric(23)) .setPort(1 + random.nextInt(96)) .setStartedAt(1 + random.nextInt(966)) .build()) .build(); }
@Test public void build_throws_IAE_if_setStarted_not_called() { builderUnderTest .setType(randomType) .setName(randomAlphanumeric(2)) .setHost(randomAlphanumeric(3)) .setPort(1 + random.nextInt(33)); expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("startedAt must be > 0"); builderUnderTest.build(); }
@Test public void build_throws_IAE_if_setPort_not_called() { builderUnderTest .setType(randomType) .setName(randomAlphanumeric(2)) .setHost(randomAlphanumeric(3)); expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("port must be > 0"); builderUnderTest.build(); }
private NodeHealth appNodeHealth(NodeDetails.Type type, NodeHealth.Status status) { return NodeHealth.newNodeHealthBuilder() .setStatus(status) .setDetails(NodeDetails.newNodeDetailsBuilder() .setType(type) .setHost(randomAlphanumeric(32)) .setName(randomAlphanumeric(32)) .setPort(1 + random.nextInt(88)) .setStartedAt(1 + random.nextInt(54)) .build()) .build(); }
private NodeHealth randomNodeHealth() { return newNodeHealthBuilder() .setStatus(NodeHealth.Status.values()[random.nextInt(NodeHealth.Status.values().length)]) .setDetails(newNodeDetailsBuilder() .setType(random.nextBoolean() ? NodeDetails.Type.APPLICATION : NodeDetails.Type.SEARCH) .setName(randomAlphanumeric(10)) .setHost(randomAlphanumeric(5)) .setPort(1 + random.nextInt(333)) .setStartedAt(1 + random.nextInt(444)) .build()) .build(); }
public NodeHealthProviderImpl(Configuration configuration, HealthChecker healthChecker, Server server, NetworkUtils networkUtils) { this.healthChecker = healthChecker; this.nodeHealthBuilder = newNodeHealthBuilder(); this.nodeDetails = newNodeDetailsBuilder() .setName(computeName(configuration)) .setType(NodeDetails.Type.APPLICATION) .setHost(computeHost(configuration, networkUtils)) .setPort(computePort(configuration)) .setStartedAt(server.getStartedAt().getTime()) .build(); }
@Test public void build_throws_NPE_if_type_is_null() { expectedException.expect(NullPointerException.class); expectedException.expectMessage("type can't be null"); builderUnderTest.build(); }
NodeDetails randomNodeDetails() { return randomNodeDetailsBuilder() .build(); }
SearchNodeHealthProvider(Props props, ClusterAppState clusterAppState, NetworkUtils networkUtils, Clock clock) { this.clusterAppState = clusterAppState; this.nodeDetails = NodeDetails.newNodeDetailsBuilder() .setType(NodeDetails.Type.SEARCH) .setName(props.nonNullValue(CLUSTER_NODE_NAME.getKey())) .setHost(getHost(props, networkUtils)) .setPort(Integer.valueOf(props.nonNullValue(CLUSTER_NODE_HZ_PORT.getKey()))) .setStartedAt(clock.now()) .build(); }
@Test public void build_throws_NPE_if_name_is_null() { builderUnderTest .setType(randomType); expectedException.expect(NullPointerException.class); expectedException.expectMessage("name can't be null"); builderUnderTest.build(); }
@Test public void build_throws_NPE_if_host_is_null() { builderUnderTest .setType(randomType) .setName(randomAlphanumeric(2)); expectedException.expect(NullPointerException.class); expectedException.expectMessage("host can't be null"); builderUnderTest.build(); }