diff --git a/app/src/test/java/org/astraea/app/web/TopicHandlerTest.java b/app/src/test/java/org/astraea/app/web/TopicHandlerTest.java index e778456edc..e28cb55836 100644 --- a/app/src/test/java/org/astraea/app/web/TopicHandlerTest.java +++ b/app/src/test/java/org/astraea/app/web/TopicHandlerTest.java @@ -134,10 +134,13 @@ void testCreateTopics() { topicName0, topicName1))); var topics = handler.post(request); Assertions.assertEquals(2, topics.topics.size()); - var t0 = topics.topics.stream().filter(t -> t.name.equals(topicName0)).findFirst().get(); - Assertions.assertEquals(1, t0.partitions.size()); - var t1 = topics.topics.stream().filter(t -> t.name.equals(topicName1)).findFirst().get(); - Assertions.assertEquals(2, t1.partitions.size()); + // the topic creation is not synced, so we have to wait the creation. + Utils.sleep(Duration.ofSeconds(2)); + var actualTopPartitions = admin.offsets(Set.of(topicName0, topicName1)).keySet(); + Assertions.assertEquals( + 1, actualTopPartitions.stream().filter(tp -> tp.topic().equals(topicName0)).count()); + Assertions.assertEquals( + 2, actualTopPartitions.stream().filter(tp -> tp.topic().equals(topicName1)).count()); } }