public void ConsumeTest() { KafkaConnection kConnection = new KafkaConnection { Url = "localhost", Port = 9092, Topic = "witsmlCreateEvent" }; Action <string> onMessageConsumed = ConsumeMessage; KafkaTaskManager taskManager = new KafkaTaskManager(); string group = $"test_{new Random().Next()}"; string autoOffsetReset = "earliest"; int timeOut = 10 * 1000; // Create the token source for cancelation purpose CancellationTokenSource cts = new CancellationTokenSource(); CancellationToken ct = cts.Token; Assert.Throws <OperationCanceledException>(() => { cts.CancelAfter(timeOut); KafkaTaskManager.Consume(kConnection, group, autoOffsetReset, ct, onMessageConsumed); }); cts.Dispose(); Assert.IsTrue(isMessageConsumed, "Message should be received from kafka"); }
public async Task ProduceTest() { KafkaTaskManager taskManager = new KafkaTaskManager(); KafkaConnection kConnection = new KafkaConnection { Url = "localhost", Port = 9092, Topic = "witsmlCreateEvent" }; int timeout = 2000; string message = $"message {new Random().Next()}"; var success = await KafkaTaskManager.Produce(kConnection, timeout, message); Assert.IsTrue(success, "Should be able to produce on a kafka cluster"); }