X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fde%2Fjuplo%2Fkafka%2FApplicationTests.java;h=f4c21041bf7c8febdb1b14abc77efc96c1be139b;hb=818c1eb862247e25abf9f7d91d5a73e3e3789a39;hp=aa6dd4d21afd5f17ebf3aaf5640062318f4f2c44;hpb=a6a0a22a5fa34a01b0e8b2bc1e0e2b82d7b60f33;p=demos%2Fkafka%2Ftraining diff --git a/src/test/java/de/juplo/kafka/ApplicationTests.java b/src/test/java/de/juplo/kafka/ApplicationTests.java index aa6dd4d..f4c2104 100644 --- a/src/test/java/de/juplo/kafka/ApplicationTests.java +++ b/src/test/java/de/juplo/kafka/ApplicationTests.java @@ -26,7 +26,6 @@ import java.util.*; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; import java.util.function.BiConsumer; -import java.util.function.Consumer; import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.IntStream; @@ -71,9 +70,12 @@ class ApplicationTests ExecutorService executor; @Autowired PartitionStatisticsRepository repository; + @Autowired + WordcountRebalanceListener wordcountRebalanceListener; + @Autowired + WordcountRecordHandler wordcountRecordHandler; - Consumer> testHandler; - EndlessConsumer endlessConsumer; + EndlessConsumer endlessConsumer; Map oldOffsets; Map newOffsets; Set> receivedRecords; @@ -205,8 +207,6 @@ class ApplicationTests @BeforeEach public void init() { - testHandler = record -> {} ; - oldOffsets = new HashMap<>(); newOffsets = new HashMap<>(); receivedRecords = new HashSet<>(); @@ -217,25 +217,26 @@ class ApplicationTests newOffsets.put(tp, offset - 1); }); - Consumer> captureOffsetAndExecuteTestHandler = - record -> - { - newOffsets.put( - new TopicPartition(record.topic(), record.partition()), - record.offset()); - receivedRecords.add(record); - testHandler.accept(record); + TestRecordHandler captureOffsetAndExecuteTestHandler = + new TestRecordHandler(wordcountRecordHandler) { + @Override + public void onNewRecord(ConsumerRecord record) + { + newOffsets.put( + new TopicPartition(record.topic(), record.partition()), + record.offset()); + receivedRecords.add(record); + } }; endlessConsumer = - new EndlessConsumer( + new EndlessConsumer<>( executor, - repository, properties.getClientId(), properties.getTopic(), - Clock.systemDefaultZone(), - properties.getCommitInterval(), - kafkaConsumer); + kafkaConsumer, + wordcountRebalanceListener, + captureOffsetAndExecuteTestHandler); endlessConsumer.start(); }