X-Git-Url: http://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fchat%2Fbackend%2FAbstractHandoverITContainers.java;h=e94ecc61fd27c90c82c853bafb0c47b80885d6f8;hb=0e5178b7a3b8c8f3167f99c2d36452a2a68c80fa;hp=4e19defd39a70c0641b6ad0b57d0903152f5812e;hpb=9b24747d04dd6d595030c1f9d1bf92e3020f1c73;p=demos%2Fkafka%2Fchat diff --git a/src/test/java/de/juplo/kafka/chat/backend/AbstractHandoverITContainers.java b/src/test/java/de/juplo/kafka/chat/backend/AbstractHandoverITContainers.java index 4e19defd..e94ecc61 100644 --- a/src/test/java/de/juplo/kafka/chat/backend/AbstractHandoverITContainers.java +++ b/src/test/java/de/juplo/kafka/chat/backend/AbstractHandoverITContainers.java @@ -45,15 +45,24 @@ public abstract class AbstractHandoverITContainers { setUpExtra(); haproxy.start(); - backend1.start(); - // backend2.start(); - // backend3.start(); + } + + void startBackend( + GenericContainer backend, + TestWriter[] testWriters) + { + backend.start(); + + int[] numSentMessages = Arrays + .stream(testWriters) + .mapToInt(testWriter -> testWriter.getNumSentMessages()) + .toArray(); Awaitility .await() - .atMost(Duration.ofMinutes(10)) + .atMost(Duration.ofSeconds(30)) .until(() -> WebClient - .create("http://localhost:" + backend1.getMappedPort(8080)) + .create("http://localhost:" + backend.getMappedPort(8080)) .get() .uri("/actuator/health") .exchangeToMono(response -> @@ -78,10 +87,9 @@ public abstract class AbstractHandoverITContainers .withSignal("HUP") .exec(); - Awaitility .await() - .atMost(Duration.ofMinutes(10)) + .atMost(Duration.ofSeconds(30)) .until(() -> WebClient .create("http://localhost:" + haproxy.getMappedPort(8400)) .get() @@ -101,6 +109,29 @@ public abstract class AbstractHandoverITContainers } }) .block()); + + Awaitility + .await() + .atMost(Duration.ofSeconds(30)) + .until(() -> + { + for (int i = 0; i < testWriters.length; i++) + { + TestWriter testWriter = testWriters[i]; + int sentTotal = testWriter.getNumSentMessages(); + if (sentTotal == numSentMessages[i]) + { + log.info( + "No progress for {}: sent-before={}, sent-total={}", + testWriter, + numSentMessages[i], + sentTotal); + return false; + } + } + + return true; + }); } abstract String[] getBackendCommand();