From: Kai Moritz Date: Sun, 14 Aug 2022 20:40:13 +0000 (+0200) Subject: GRÜN: (ungewollt!) - Unabhängigkeit der Tests wieder hergestellt X-Git-Tag: sumup-adder---lvm-2-tage~10^2~3 X-Git-Url: https://juplo.de/gitweb/?a=commitdiff_plain;h=e5c029af3690ae8ebed729af4f06296cef13fa3c;hp=-c;p=demos%2Fkafka%2Ftraining GRÜN: (ungewollt!) - Unabhängigkeit der Tests wieder hergestellt * Die Mongo-DB wird jetzt zwischen den Tests gewaltsam mit `drop()` geleert. * Dadurch wirkt sich der Test, bei dem die Verarbeitung durch einen Logik-Fehler unterbrochen wird, nicht mehr auf den/die anderen Tests aus. --- e5c029af3690ae8ebed729af4f06296cef13fa3c diff --git a/src/main/java/de/juplo/kafka/ApplicationConfiguration.java b/src/main/java/de/juplo/kafka/ApplicationConfiguration.java index 4473c69..5e1f8fb 100644 --- a/src/main/java/de/juplo/kafka/ApplicationConfiguration.java +++ b/src/main/java/de/juplo/kafka/ApplicationConfiguration.java @@ -70,6 +70,7 @@ public class ApplicationConfiguration props.put("group.id", properties.getGroupId()); props.put("client.id", properties.getClientId()); props.put("auto.offset.reset", properties.getAutoOffsetReset()); + props.put("auto.commit.interval.ms", (int)properties.getCommitInterval().toMillis()); props.put("metadata.max.age.ms", "1000"); props.put("key.deserializer", StringDeserializer.class.getName()); props.put("value.deserializer", StringDeserializer.class.getName()); diff --git a/src/test/java/de/juplo/kafka/GenericApplicationTests.java b/src/test/java/de/juplo/kafka/GenericApplicationTests.java index cff44e2..449c389 100644 --- a/src/test/java/de/juplo/kafka/GenericApplicationTests.java +++ b/src/test/java/de/juplo/kafka/GenericApplicationTests.java @@ -1,5 +1,6 @@ package de.juplo.kafka; +import com.mongodb.client.MongoClient; import lombok.extern.slf4j.Slf4j; import org.apache.kafka.clients.consumer.ConsumerRecord; import org.apache.kafka.clients.consumer.KafkaConsumer; @@ -12,6 +13,7 @@ import org.apache.kafka.common.utils.Bytes; import org.junit.jupiter.api.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.autoconfigure.mongo.MongoProperties; import org.springframework.boot.test.autoconfigure.data.mongo.AutoConfigureDataMongo; import org.springframework.boot.test.context.ConfigDataApplicationContextInitializer; import org.springframework.boot.test.context.TestConfiguration; @@ -60,6 +62,10 @@ abstract class GenericApplicationTests @Autowired ExecutorService executor; @Autowired + MongoClient mongoClient; + @Autowired + MongoProperties mongoProperties; + @Autowired PollIntervalAwareConsumerRebalanceListener rebalanceListener; @Autowired RecordHandler recordHandler; @@ -346,6 +352,8 @@ abstract class GenericApplicationTests } }; + mongoClient.getDatabase(mongoProperties.getDatabase()).drop(); + endlessConsumer = new EndlessConsumer<>( executor,