X-Git-Url: http://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fchat%2Fbackend%2FAbstractConfigurationIT.java;fp=src%2Ftest%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fchat%2Fbackend%2FAbstractConfigurationIT.java;h=452e4244bf25d0e4b6b42bb688cab30abe24d07f;hb=ab1eee218b7944a848148ed4ba0272fea9f23780;hp=c639f70a9f36f8e6c4457487d5772106fc8e5514;hpb=3bde6637da603741a317b63c5e5d06959d53c804;p=demos%2Fkafka%2Fchat diff --git a/src/test/java/de/juplo/kafka/chat/backend/AbstractConfigurationIT.java b/src/test/java/de/juplo/kafka/chat/backend/AbstractConfigurationIT.java index c639f70a..452e4244 100644 --- a/src/test/java/de/juplo/kafka/chat/backend/AbstractConfigurationIT.java +++ b/src/test/java/de/juplo/kafka/chat/backend/AbstractConfigurationIT.java @@ -188,34 +188,39 @@ public abstract class AbstractConfigurationIT @DisplayName("A message can be put into a newly created chat-room") void testPutMessageInNewChatRoom() throws IOException { + ChatRoomInfoTo chatRoomInfo; + do + { + // The first request creates a new chat-room + // It must be repeated, until a chat-room was created, + // that is owned by the instance + chatRoomInfo = webTestClient + .post() + .uri("http://localhost:{port}/create", port) + .contentType(MediaType.TEXT_PLAIN) + .bodyValue("bar") + .accept(MediaType.APPLICATION_JSON) + .exchange() + .returnResult(ChatRoomInfoTo.class) + .getResponseBody() + .retry(30) + .blockFirst(); + } + while(!(chatRoomInfo.getShard() == null || chatRoomInfo.getShard().intValue() == 2)); + + UUID chatRoomId = chatRoomInfo.getId(); + Awaitility .await() .atMost(Duration.ofSeconds(15)) .untilAsserted(() -> { - // The first request creates a new chat-room - ChatRoomInfoTo chatRoomInfo = webTestClient - .post() - .uri("http://localhost:{port}/create", port) - .contentType(MediaType.TEXT_PLAIN) - .bodyValue("bar") - .accept(MediaType.APPLICATION_JSON) - .exchange() - .expectStatus().isOk() - .returnResult(ChatRoomInfoTo.class) - .getResponseBody() - .blockFirst(); - - // It must be repeated, until a chat-room was created, - // that is owned by the instance - assertThat(chatRoomInfo.getShard()).isIn(2, null); - webTestClient .put() .uri( "http://localhost:{port}/{chatRoomId}/nerd/7", port, - chatRoomInfo.getId()) + chatRoomId) .contentType(MediaType.TEXT_PLAIN) .accept(MediaType.APPLICATION_JSON) .bodyValue("Hello world!")