+
+ @Test
+ @DisplayName("A PUT-message for a non-existent chat-room yields 404 NOT FOUND")
+ void testNotFoundForPutMessageToNonExistentChatRoom()
+ {
+ String otherChatRoomId = "7f59ec77-832e-4a17-8d22-55ef46242c17";
+
+ Awaitility
+ .await()
+ .atMost(Duration.ofSeconds(15))
+ .untilAsserted(() ->
+ {
+ webTestClient
+ .put()
+ .uri(
+ "http://localhost:{port}/{chatRoomId}/otto/66",
+ port,
+ otherChatRoomId)
+ .contentType(MediaType.TEXT_PLAIN)
+ .accept(MediaType.APPLICATION_JSON)
+ .bodyValue("The devil rules route 66")
+ .exchange()
+ .expectStatus().isNotFound()
+ .expectBody()
+ .jsonPath("$.type").value(endsWith("/problem/unknown-chatroom"))
+ .jsonPath("$.chatroomId").isEqualTo(otherChatRoomId);
+ });
+ }