private static EventService buildKafkaPublisher(final NotificationsConfiguration config, final Environment environment) { LOGGER.info("Connecting to Kafka broker at {}", config.getConnectionString()); final KafkaProducer<String, String> kafkaProducer = new KafkaProducer<>(getKafkaProperties(config)); environment.lifecycle().manage(new AutoCloseableManager(kafkaProducer)); return new KafkaPublisher(kafkaProducer, config.getTopicName()); }
@Test public void testDefaultKafka() { assertDoesNotThrow(() -> new KafkaPublisher()); } }
@Test public void testKafka() { final EventService svc = new KafkaPublisher(producer); svc.emit(mockEvent); final List<ProducerRecord<String, String>> records = producer.history(); assertEquals(1L, records.size(), "Incorrect total records size!"); assertEquals(1L, records.stream().filter(r -> r.topic().equals(queueName)).count(), "Incorrect filtered size!"); }